业务端到端性能监控方法及装置转让专利

申请号 : CN201710398843.5

文献号 : CN108989136B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王新安

申请人 : 中国移动通信集团公司中国移动通信集团山东有限公司

摘要 :

本发明实施例提供一种业务端到端性能监控方法及装置,其中,方法包括:每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据;根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库;每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标。本发明实施例能对业务端到端性能进行主动、准确、稳定、实时的监控,使后续可以对故障进行快速诊断及准确定位。

权利要求 :

1.一种业务端到端性能监控方法,其特征在于,包括:

每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据;

根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库,包括:根据预设业务配置中的应用协议,利用数据解码引擎对所述原始数据进行协议解码,将所述原始数据转换为分散的原始交易报文;根据所述原始交易报文中的TCP会话标识,通过流处理,将所述原始交易报文中的不同服务组件的交易进行会话关联,将会话关联后的交易记录汇聚成完整的原始业务交易记录;根据所述原始业务交易记录中的关键标识,将不同服务组件的交易记录进行跨组件交易关联,将跨组件交易关联后的交易记录汇聚成一个完整业务全流程交易记录的调用视图;将所述完整业务全流程交易记录转换成用于进行前台展示的格式后存储到数据库;

每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标。

2.根据权利要求1所述的方法,其特征在于,所述性能指标,包括:单位时间内交易量、单位时间内成功率、平均响应时间、响应率、基线、告警阈值;

其中,所述单位时间内交易量为每个服务组件单位时间内接收到的交易请求数量;

所述单位时间内成功率是根据每笔交易所返回的业务处理结果中携带的返回码来判断成功交易数和交易响应数后,通过第一公式计算得到的;

所述平均响应时间是通过在完整业务全流程交易记录中解析出每一笔业务的报文请求时间和报文返回时间后,通过第二公式计算得到的;

所述响应率是通过第三公式计算得到的;

所述基线是通过流处理技术,采用加权移动平均值算法,通过第四公式计算得到的;

所述告警阈值是根据实际情况预先设置的;

所述第一公式为:

所述第二公式为:

所述第三公式为:

所述第四公式为:

其中,i=1,2,…,n,n为计算周期,wi为第i分钟的某一性能指标,xi为第i分钟所述某一性能指标的权数, 为所述计算周期内所述某一性能指标的加权平均值。

3.根据权利要求1所述的方法,其特征在于,在所述获取每个服务组件当前的性能指标之后,所述方法还包括:将每个服务组件当前的性能指标存储到数据库,并根据每个服务组件当前的性能指标和所述数据库中存储的历史性能指标,生成每个服务组件的性能趋势报告,将所述性能趋势报告进行前台展示或者发送给运营管理系统BOMC平台。

4.根据权利要求1所述的方法,其特征在于,在所述获取每个服务组件当前的性能指标之后,所述方法还包括:针对任一服务组件,若判断获知该服务组件当前的性能指标大于等于该服务组件的预设告警阈值,则在预设第三时间段内进行告警提示。

5.根据权利要求1-4中任一项所述的方法,其特征在于,在所述每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据之前,所述方法还包括:进行业务配置。

6.根据权利要求5所述的方法,其特征在于,所述进行业务配置,包括:根据业务的系统部署逻辑图,梳理出业务访问关系视图;

获取业务下每个服务组件的样本数据,根据预先配置的访问控制规则,对所述样本数据过滤后存储到数据库;

基于源地址、目标地址和端口,对过滤后的样本数据中各个服务组件间的调用关系进行分析,生成服务路径图;

根据所述服务路径图,将不同服务组件按照业务用途归类到服务服务组件下,并按照调用层次排序,生成业务整体监控视图。

7.一种业务端到端性能监控装置,其特征在于,包括:

第一获取模块,用于每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据;

处理模块,用于根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库,包括:根据预设业务配置中的应用协议,利用数据解码引擎对所述原始数据进行协议解码,将所述原始数据转换为分散的原始交易报文;根据所述原始交易报文中的TCP会话标识,通过流处理,将所述原始交易报文中的不同服务组件的交易进行会话关联,将会话关联后的交易记录汇聚成完整的原始业务交易记录;根据所述原始业务交易记录中的关键标识,将不同服务组件的交易记录进行跨组件交易关联,将跨组件交易关联后的交易记录汇聚成一个完整业务全流程交易记录的调用视图;将所述完整业务全流程交易记录转换成用于进行前台展示的格式后存储到数据库;

第二获取模块,用于每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标。

8.一种电子设备,其特征在于,包括:处理器、存储器、总线及存储在存储器上并可在处理器上运行的计算机程序;

其中,所述处理器,存储器通过所述总线完成相互间的通信;

所述处理器执行所述计算机程序时实现如权利要求1-6中任一项所述的方法。

9.一种非暂态计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,该计算机程序被处理器执行时实现如权利要求1-6中任一项所述的方法。

说明书 :

业务端到端性能监控方法及装置

技术领域

[0001] 本发明涉及互联网技术领域,尤其涉及一种业务端到端性能监控方法及装置。

背景技术

[0002] 随着云计算和互联网高速发展,业务越来越多,机器数量呈现十倍以致几十倍快速增长,系统架构也越来越复杂,新技术带来了投资降低、性能提升、资源共享、弹性扩展和快速部署等优势,但同时也给我们运维管理工作带来了新的挑战与思考,传统业务监控模式已经难以满足云化后要求,急需引入新的运维思路、方法提升服务质量和运维效率。
[0003] 目前,传统业务监控模式包括:代理方式和日志方式。代理方式是一种在“IOE”架构下比较典型的基于点的“竖井式”系统完好性业务监控模式,通过在目标主机上逐个部署后台脚本来定时采集系统中央处理器CPU、内存和存储等资源使用以及业务日志数据等信息传送到集中监控平台进行分析和呈现。日志方式是在应用程序中关键调用环节增加日志打印日志方式,将采集到数据输出到监控平台后进行集中分析和呈现。
[0004] 但是,由于云化后所需监控机器数量越来越多,代理方式在自动化程度、效率、灵活性、稳定性、实时性和安全管控等方面都存在严重问题,监控数据无法关联,需要人为做大量的日志分析和问题定位,故障定位过程复杂,效率低。而日志方式虽然能实现服务组件间日志关联,但和业务强耦合,且应用改造工作量大,数据输出存在延迟,很难实现全部业务覆盖,同时日志方式会影响业务性能,给系统稳定性带来很大隐患。另外,在系统运维方面,传统业务监控模式下是一种被动处理方式,出现故障时,运维人员一般采用拉网式排查,通过搜集各主机性能相关日志,进行汇聚分析和问题排查,这种方式更多依靠个人经验,一旦遇到辣手问题很难定位。
[0005] 鉴于此,如何对业务端到端性能进行主动、准确、稳定、实时的监控成为目前需要解决的技术问题。

发明内容

[0006] 为解决上述的技术问题,本发明实施例提供一种业务端到端性能监控方法及装置,能够对业务端到端性能进行主动、准确、稳定、实时的监控,使后续可以对故障进行快速诊断及准确定位。
[0007] 第一方面,本发明实施例提供一种业务端到端性能监控方法,包括:
[0008] 每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据;
[0009] 根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库;
[0010] 每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标。
[0011] 可选地,所述根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录,包括:
[0012] 根据预设业务配置中的应用协议,利用数据解码引擎对所述原始数据进行协议解码,将所述原始数据转换为分散的原始交易报文;
[0013] 根据所述原始交易报文中的TCP会话标识,通过流处理,将所述原始交易报文中的不同服务组件的交易进行会话关联,将会话关联后的交易记录汇聚成完整的原始业务交易记录;
[0014] 根据所述原始业务交易记录中的关键标识,将不同服务组件的交易记录进行跨组件交易关联,将跨组件交易关联后的交易记录汇聚成一个完整业务全流程交易记录的调用视图;
[0015] 将所述完整业务全流程交易记录转换成用于进行前台展示的格式后存储到数据库。
[0016] 可选地,所述性能指标,包括:单位时间内交易量、单位时间内成功率、平均响应时间、响应率、基线、告警阈值;
[0017] 其中,所述单位时间内交易量为每个服务组件单位时间内接收到的交易请求数量;
[0018] 所述单位时间内成功率是根据每笔交易所返回的业务处理结果中携带的返回码来判断成功交易数和交易响应数后,通过所述第一公式计算得到的;
[0019] 所述平均响应时间是通过在完整业务全流程交易记录中解析出每一笔业务的报文请求时间和报文返回时间后,通过所述第二公式计算得到的;
[0020] 所述响应率是通过所述第三公式计算得到的;
[0021] 所述基线是通过流处理技术,采用加权移动平均值算法,通过第四公式计算得到的;
[0022] 所述告警阈值是根据实际情况预先设置的;
[0023] 所述第一公式为:
[0024]
[0025] 所述第二公式为:
[0026]
[0027] 所述第三公式为:
[0028]
[0029] 所述第四公式为:
[0030]
[0031] 其中,i=1,2,…,n,n为计算周期,wi为第i分钟的某一性能指标,xi为第i分钟所述某一性能指标的权数, 为所述计算周期内所述某一性能指标的加权平均值。
[0032] 可选地,在所述获取每个服务组件当前的性能指标之后,所述方法还包括:
[0033] 将每个服务组件当前的性能指标存储到数据库,并根据每个服务组件当前的性能指标和所述数据库中存储的历史性能指标,生成每个服务组件的性能趋势报告,将所述性能趋势报告进行前台展示或者发送给运营管理系统BOMC平台。
[0034] 可选地,在所述获取每个服务组件当前的性能指标之后,所述方法还包括:
[0035] 针对任一服务组件,若判断获知该服务组件当前的性能指标大于等于该服务组件的预设告警阈值,则在预设第三时间段内进行告警提示。
[0036] 可选地,在所述每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据之前,所述方法还包括:
[0037] 进行业务配置。
[0038] 可选地,所述进行业务配置,包括:
[0039] 根据业务的系统部署逻辑图,梳理出业务访问关系视图;
[0040] 获取业务下每个服务组件的样本数据,根据预先配置的访问控制规则,对所述样本数据过滤后存储到数据库;
[0041] 基于源地址、目标地址和端口,对过滤后的样本数据中各个服务组件间的调用关系进行分析,生成服务路径图;
[0042] 根据所述服务路径图,将不同服务组件按照业务用途归类到服务服务组件下,并按照调用层次排序,生成业务整体监控视图。
[0043] 第二方面,本发明实施例提供一种业务端到端性能监控装置,包括:
[0044] 第一获取模块,用于每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据;
[0045] 处理模块,用于根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库;
[0046] 第二获取模块,用于每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标。
[0047] 第三方面,本发明实施例提供一种电子设备,包括:处理器、存储器、总线及存储在存储器上并可在处理器上运行的计算机程序;
[0048] 其中,所述处理器,存储器通过所述总线完成相互间的通信;
[0049] 所述处理器执行所述计算机程序时实现上述方法。
[0050] 第四方面,本发明实施例提供一种非暂态计算机可读存储介质,所述存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述方法。
[0051] 由上述技术方案可知,本发明实施例的业务端到端性能监控方法及装置,通过每隔预设第一时间段通过TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据,根据预设业务配置对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库,每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标,由此,能够对业务端到端性能进行主动、准确、稳定、实时的监控,使后续可以对故障进行快速诊断及准确定位。

附图说明

[0052] 图1为本发明一实施例提供的一种业务端到端性能监控方法的流程示意图;
[0053] 图2为本发明实施例提供的一种系统部署逻辑图;
[0054] 图3为本发明实施例提供的一种业务访问关系视图;
[0055] 图4为本发明实施例提供的一种业务整体监控视图;
[0056] 图5为本发明实施例提供的一种将原始数据转换为分散的原始交易报文的示意图;
[0057] 图6为本发明实施例提供的一种完整的原始业务交易记录的示意图;
[0058] 图7为本发明实施例提供的一种完整业务全流程交易记录的调用视图;
[0059] 图8为本发明一实施例提供的一种业务端到端性能监控装置的结构示意图;
[0060] 图9为本发明实施例提供的一种电子设备的实体结构示意图。

具体实施方式

[0061] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他的实施例,都属于本发明保护的范围。
[0062] 图1示出了本发明一实施例提供的业务端到端性能监控方法的流程示意图,所述业务端到端性能监控方法应用在数据中心,如图1所示,本实施例的业务端到端性能监控方法如下所述。
[0063] 101、每隔预设第一时间段,通过分路器(Test Access Point,简称TAP)(汇聚)获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据(包)。
[0064] 在具体应用中,所述预先配置的访问控制规则可以基于IP(网络之间互连的协议)+端口的ACL规则。
[0065] 在具体应用中,所生成的原始数据可以为过程特性分析软件包PCAP文件(二进制网络包)。
[0066] 102、根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库。
[0067] 其中,所述完整的原始业务交易记录,可以包括:各业务的原始业务交易记录请求包和各业务的原始业务交易记录返回包等。
[0068] 103、每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标。
[0069] 在具体应用中,所述性能指标,可以包括:单位时间内交易量、单位时间内成功率、平均响应时间、响应率、基线、告警阈值等,本实施例并不对其进行限制,也可以根据实际情况还包括其他的性能指标。
[0070] 其中,所述单位时间内交易量为每个服务组件单位时间内(例如每分钟)接收到的交易请求数量,所述告警阈值可以根据实际情况进行预先设置。
[0071] 其中,所述单位时间内成功率是根据每笔交易所返回的业务处理结果中携带的返回码来判断成功交易数和交易响应数后,可通过第一公式计算得到的,该返回码可以根据不同的应用协议进行具体配置,所述第一公式为:
[0072]
[0073] 其中,所述平均响应时间是通过在完整业务全流程交易记录中解析出每一笔业务的报文请求时间和报文返回时间后,可通过第二公式计算得到的,所述第二公式为:
[0074]
[0075] 其中,所述响应率可通过第三公式计算得到的,所述第三公式为:
[0076]
[0077] 由于在系统发生故障的情况下,业务系统在接收到客户端的业务请求报文后可能会失去响应,因此通过响应率可以有效的对系统发生故障的情况进行监控。
[0078] 其中,由于发现算术移动平均值算法和加权移动平均值算法不能很好地反映出趋势,其预测值总是停留在过去的水平上而无法预测会导致将来出现更高的波动;同时考虑到运营商业务持续发展,且存在月底月初业务高峰情况,为了能够更准确地预测未来系统性能变化趋势,本实施例的基线可通过流处理技术,采用加权移动平均值算法,通过第四公式计算得到的,所述第四公式为:
[0079]
[0080] 其中,i=1,2,…,n,n为计算周期(例如以每5分钟的单位时间作为计算周期),wi为第i分钟的某一性能指标,xi为第i分钟所述某一性能指标的权数, 为所述计算周期内所述某一性能指标的加权平均值。
[0081] 在具体应用中,举例来说,本实施例可以根据所述数据库里存储的完整业务全流程交易记录,利用spark计算引擎,采用加权移动平均值算法,通过上述第四公式计算得到每个服务组件各项性能指标的基线。
[0082] 在具体应用中,所述步骤103还可以将每个服务组件当前的性能指标进行前台展示或者发送给运营管理系统(Business Operation Management Center,简称BOMC)平台。举例来说,可以通过syslog接口将每个服务组件当前的性能指标发送给BOMC平台,以使BOMC平台可以后续对每个服务组件的性能指标进行统计分析。
[0083] 需说明的是,本实施例中的预设第一时间段与预设第二时间段的取值可以相同,也可以不同,可根据实际情况进行设置。
[0084] 本实施例的业务端到端性能监控方法,通过每隔预设第一时间段通过TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据,根据预设业务配置对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库,每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标,由此,能够对业务端到端性能进行主动、准确、稳定、实时且全面的监控,可使后续可以对故障进行快速诊断及准确定位。
[0085] 在具体应用中,上述步骤101之前,所述方法还可以包括图中未示出的步骤100:
[0086] 100、进行业务配置,可支持多个不同的应用协议,如HTTP、CICS、SOAP等应用协议。
[0087] 具体地,所述步骤100可以包括图中未示出的步骤S1-S4:
[0088] S1、根据业务的系统部署逻辑图(可参考图2),梳理出业务访问关系视图,可参考图3。
[0089] S2、获取业务下每个服务组件的样本数据,根据预先配置的访问控制规则,对所述样本数据过滤后存储到数据库。
[0090] S3、基于源地址、目标地址和端口,对过滤后的样本数据中各个服务组件间的调用关系进行分析,生成服务路径图。
[0091] 可以理解的是,基于源地址、目标地址和端口,对过滤后的样本数据进行分析可以得到每个服务组件之间的调用(或访问)关系,可以根据服务组件与IP的对应关系,形成服务组件节点以及所有服务组件节点之间的连接关系。
[0092] S4、根据所述服务路径图,将不同服务组件按照业务用途归类到服务服务组件下,并按照调用层次排序,生成业务整体监控视图,可参考图4。
[0093] 在具体应用中,所述步骤102可以,包括图中未示出的步骤102a-102d:
[0094] 102a、根据预设业务配置中的应用协议,利用数据解码引擎对所述原始数据进行协议解码,将所述原始数据转换为分散的原始交易报文。
[0095] 具体地,所述步骤102a可以利用数据解码引擎,根据预设业务配置中的应用协议,按源IP地址、目标IP地址和端口等将所述原始数据转换为分散的原始交易报文,可参考图5。
[0096] 102b、根据所述原始交易报文中的传输控制协议TCP会话标识(Flowid),通过流处理,将所述原始交易报文中的不同服务组件的交易进行会话关联,将会话关联后的交易记录汇聚成完整的原始业务交易记录,可参考图6。
[0097] 具体地,可以结合源IP地址和端口从数据库中查找到交易所在业务整体监控视图中的服务组件标识(stream_id)。
[0098] 102c、根据所述原始业务交易记录中的关键标识,将不同服务组件的交易记录进行跨组件交易关联,将跨组件交易关联后的交易记录汇聚成一个完整业务全流程交易记录的调用视图,可参考图7。
[0099] 举例来说,所述原始业务交易记录中的关键标识可以包括手机号码等,本实施例并不对其进行限制,可根据实际情况选择关键标识。
[0100] 102d、将所述完整业务全流程交易记录转换成用于进行前台展示的格式后存储到数据库。
[0101] 在具体应用中,在上述步骤103之后,所述方法还可以包括:
[0102] 将每个服务组件当前的性能指标存储到数据库,并根据每个服务组件当前的性能指标和所述数据库中存储的历史性能指标,生成每个服务组件的性能趋势报告,将所述性能趋势报告进行前台展示或者发送给BOMC平台。举例来说,可以通过syslog接口将所述性能趋势报告发送给BOMC平台,以供后续BOMC平台可以对所述性能趋势报告进行统计分析。
[0103] 在具体应用中,在上述步骤103之后,所述方法还可以包括:
[0104] 针对任一服务组件,若判断获知该服务组件当前的性能指标大于等于该服务组件的预设告警阈值,则在预设第三时间段(例如5分钟等)内进行告警提示。
[0105] 可以理解的是,在本实施例中,针对任一服务组件,若判断获知该服务组件当前的性能指标小于该服务组件的预设告警阈值,则不进行告警提示。
[0106] 具体地,本实施例可以利用警铃和/或警灯进行告警提示,也可以通过前台展示告警提示信息,或者向BOMC平台发送告警提示信息,本实施例并不对其进行限制。
[0107] 本实施例的业务端到端性能监控方法,能够对业务端到端性能进行主动、准确、稳定、实时且全面的监控,可以实现将监控数据进行关联,支持多种应用协议部署快捷方便,灵活、高效,可以实现不同服务组件间交易自动关联,构建业务整体试图监控,将系统运维化繁为简,化被动为主动,以服务为中心,深入服务组件,可使后续可以对故障进行快速诊断及准确定位。
[0108] 图8示出了本发明一实施例提供的一种业务端到端性能监控装置的结构示意图,本实施例的业务端到端性能监控装置应用在数据中心,如图8所示,本实施例的业务端到端性能监控装置,包括:第一获取模块81、处理模块82和第二获取模块83;其中:
[0109] 第一获取模块81,用于每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据;
[0110] 处理模块82,用于根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库;
[0111] 第二获取模块83,用于每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标。
[0112] 在具体应用中,所述性能指标,可以包括:单位时间内交易量、单位时间内成功率、平均响应时间、响应率、基线、告警阈值等,本实施例并不对其进行限制,也可以根据实际情况还包括其他的性能指标。
[0113] 其中,所述单位时间内交易量为每个服务组件单位时间内(例如每分钟)接收到的交易请求数量,所述告警阈值可以根据实际情况进行预先设置。
[0114] 其中,所述单位时间内成功率是根据每笔交易所返回的业务处理结果中携带的返回码来判断成功交易数和交易响应数后,可通过上述第一公式计算得到,该返回码可以根据不同的应用协议进行具体配置。
[0115] 其中,所述平均响应时间是通过在完整业务全流程交易记录中解析出每一笔业务的报文请求时间和报文返回时间后,可通过上述第二公式计算得到。
[0116] 其中,所述响应率可通过上述第三公式计算得到。
[0117] 其中,本实施例的基线可通过流处理技术,采用加权移动平均值算法,通过上述第四公式计算得到。
[0118] 其中,所述完整的原始业务交易记录,可以包括:各业务的原始业务交易记录请求包和各业务的原始业务交易记录返回包等。
[0119] 在具体应用中,所述第二获取模块83还可以用于将每个服务组件当前的性能指标进行前台展示或者发送给BOMC平台,以使BOMC平台可后续对每个服务组件的性能指标进行统计分析。
[0120] 需说明的是,本实施例中的预设第一时间段与预设第二时间段的取值可以相同,也可以不同,可根据实际情况进行设置。
[0121] 本实施例的业务端到端性能监控装置,应用在数据中心,通过第一获取模块每隔预设第一时间段通过TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据,处理模块根据预设业务配置对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库,第二获取模块每隔预设第二时间段根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标,由此,能够对业务端到端性能进行主动、准确、稳定、实时且全面的监控,可使后续可以对故障进行快速诊断及准确定位。
[0122] 在具体应用中,本实施例的业务端到端性能监控装置还可以包括:
[0123] 业务配置模块,用于进行业务配置。
[0124] 进一步地,业务配置模块,可具体用于
[0125] 根据业务的系统部署逻辑图,梳理出业务访问关系视图;
[0126] 获取业务下每个服务组件的样本数据,根据预先配置的访问控制规则,对所述样本数据过滤后存储到数据库;
[0127] 基于源地址、目标地址和端口,对过滤后的样本数据中各个服务组件间的调用关系进行分析,生成服务路径图;
[0128] 根据所述服务路径图,将不同服务组件按照业务用途归类到服务服务组件下,并按照调用层次排序,生成业务整体监控视图。
[0129] 在具体应用中,所述处理模块82,可具体用于
[0130] 根据预设业务配置中的应用协议,利用数据解码引擎对所述原始数据进行协议解码,将所述原始数据转换为分散的原始交易报文;
[0131] 根据所述原始交易报文中的TCP会话标识(Flowid),通过流处理,将所述原始交易报文中的不同服务组件的交易进行会话关联,将会话关联后的交易记录汇聚成完整的原始业务交易记录;
[0132] 根据所述原始业务交易记录中的关键标识,将不同服务组件的交易记录进行跨组件交易关联,将跨组件交易关联后的交易记录汇聚成一个完整业务全流程交易记录的调用视图;
[0133] 将所述完整业务全流程交易记录转换成用于进行前台展示的格式后存储到数据库。
[0134] 进一步地,本实施例所述装置还可以包括:
[0135] 报告生成模块,用于将每个服务组件当前的性能指标存储到数据库,并根据每个服务组件当前的性能指标和所述数据库中存储的历史性能指标,生成每个服务组件的性能趋势报告,并将所述性能趋势报告进行前台展示或者发送给BOMC平台。
[0136] 进一步地,本实施例所述装置还可以包括:
[0137] 告警提示模块,用于针对任一服务组件,若判断获知该服务组件当前的性能指标大于等于该服务组件的预设告警阈值,则在预设第三时间段内进行告警提示。
[0138] 具体地,本实施例可以利用警铃和/或警灯进行告警提示,也可以通过前台展示告警提示信息,或者向BOMC平台发送告警提示信息,本实施例并不对其进行限制。
[0139] 本实施例的业务端到端性能监控装置,可以用于执行前述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
[0140] 本实施例的业务端到端性能监控装置,能够对业务端到端性能进行主动、准确、稳定、实时且全面的监控,可以实现将监控数据进行关联,支持多种应用协议部署快捷方便,灵活、高效,可以实现不同服务组件间交易自动关联,构建业务整体试图监控,将系统运维化繁为简,化被动为主动,以服务为中心,深入服务组件,可使后续可以对故障进行快速诊断及准确定位。
[0141] 图9示出了本发明实施例提供的一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器11、存储器12、总线13及存储在存储器12上并可在处理器11上运行的计算机程序;
[0142] 其中,所述处理器11,存储器12通过所述总线13完成相互间的通信;
[0143] 所述处理器11执行所述计算机程序时实现上述各方法实施例所提供的方法,例如包括:每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据;根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库;每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标。
[0144] 本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例所提供的方法,例如包括:每隔预设第一时间段,通过分路器TAP获取所有服务组件的网络数据,根据预先配置的访问控制规则,对所述网络数据依次进行过滤、重排,生成原始数据;根据预设业务配置,对所述原始数据进行处理,获得完整业务全流程交易记录并存储到数据库;每隔预设第二时间段,根据所述数据库里存储的所述完整业务全流程交易记录,获取每个服务组件当前的性能指标。
[0145] 本领域内的技术人员应明白,本申请的实施例可提供为方法、装置、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0146] 本申请是参照根据本申请实施例的方法、装置、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置/系统。
[0147] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0148] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0149] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0150] 本发明的说明书中,说明了大量具体细节。然而能够理解的是,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释呈反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本发明并不局限于任何单一的方面,也不局限于任何单一的实施例,也不局限于这些方面和/或实施例的任意组合和/或置换。而且,可以单独使用本发明的每个方面和/或实施例或者与一个或更多其他方面和/或其实施例结合使用。
[0151] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。