系统故障根因定位方法及装置、设备、存储介质制造方法及图纸

技术编号:36264492 阅读:19 留言:0更新日期:2023-01-07 10:03
本发明专利技术公开了一种系统故障根因定位方法及其装置、设备、存储介质,其中方法包括:采集应用系统各个节点的运维数据;运维数据至少包括性能指标数据、业务指标数据、调用链数据以及日志数据;根据调用链数据获取节点实际耗时,并根据日志数据获取节点日志数据量的时序数据;通过时间序列异常检测算法对性能指标数据、节点实际耗时和节点日志数据量进行异常检测;根据异常日志规则库对日志内容进行异常检测;并对业务指标数据进行异常检测;根据异常检测获取异常节点的异常日志和合并异常分值;并根据异常日志和合并异常分值输出根因节点及其对应的根因指标和/或根因日志。本发明专利技术提供的技术方案,以应用系统的系统故障根因定位的准确性。的准确性。的准确性。

【技术实现步骤摘要】
系统故障根因定位方法及装置、设备、存储介质


[0001]本专利技术涉及软件测试
,尤其涉及一种系统故障根因定位方法及装置、设备、存储介质。

技术介绍

[0002]在当前云环境下,应用系统往往是面向服务的集群架构,为实现某种业务,需在多个服务器上部署不同服务组件,系统组件数量的增长为保障安全生产、定位系统故障原因带来更多挑战。
[0003]进行根因定位往往需要首先进行异常检测,而对应用系统进行异常检测和根因定位存在以下问题和难点:定位根因依赖的运维数据来源单一,例如,现常基于性能指标进行异常检测和根因定位,这种定位方式会存在根因节点定位不准和异常发现不全的问题。

技术实现思路

[0004]本专利技术实施例提供了一种系统故障根因定位方法及装置、设备、存储介质,以提高应用系统的系统故障根因定位的准确性。
[0005]第一方面,本专利技术实施例提供了一种系统故障根因定位方法,包括:
[0006]采集应用系统各个节点的运维数据;所述运维数据至少包括性能指标数据、业务指标数据、调用链数据以及日志数据;
[0007]根据所述调用链数据获取节点实际耗时,并根据所述日志数据获取节点日志数据量的时序数据;
[0008]通过时间序列异常检测算法对所述性能指标数据、所述节点实际耗时和所述节点日志数据量进行异常检测;根据异常日志规则库对日志内容进行异常检测;并对所述业务指标数据进行异常检测;
[0009]根据所述异常检测获取异常节点的异常日志和合并异常分值;并根据所述异常日志和合并异常分值输出根因节点及其对应的根因指标和/或根因日志。
[0010]第二方面,本专利技术实施例还提供了一种系统故障根因定位装置,包括:
[0011]数据采集模块,用于采集应用系统各个节点的运维数据;所述运维数据至少包括性能指标数据、业务指标数据、调用链数据以及日志数据;
[0012]数据预处理模块,用于根据所述调用链数据获取节点实际耗时,并根据所述日志数据获取节点日志数据量的时序数据;
[0013]异常检测模块,用于通过时间序列异常检测算法对所述性能指标数据、所述节点实际耗时和所述节点日志数据量进行异常检测,根据异常日志规则库对日志内容进行异常检测,并对所述业务指标数据进行异常检测;
[0014]根因定位模块,用于根据所述异常检测获取异常节点的异常日志和合并异常分值,并根据所述异常日志和合并异常分值输出根因节点及其对应的根因指标和/或根因日志。
[0015]第三方面,本专利技术实施例还提供了一种计算机设备,所述设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本专利技术任意实施例所述的系统故障根因定位方法。
[0016]第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理装置执行时实现本专利技术任意实施例所述的系统故障根因定位方法。
[0017]本专利技术中,通过性能指标数据、业务指标数据、调用链数据以及日志数据等多模态数据进行根因定位,相对于单纯依赖性能指标数据进行异常检测和根因定位,定位结果更加精准,并且,本实施例通过时间序列异常检测算法对运维数据中的时序数据进行异常检测,相较于其他异常检测算法该算法对季节性的时间序列异常能够很好的识别,能够识别全局和局部异常,对异常节点识别率更高。此外,本实施例还能够在异常检测过程中,定位到异常节点,并反映出异常节点的异常性能指标和异常日志,输出结果包含异常节点的异常分值,可有效帮助运维和开发人员进行故障发现、故障分析和故障解决,减少应用系统故障时间,维持应用系统的良好运行。
附图说明
[0018]图1为本专利技术实施例提供的一种系统故障根因定位方法的流程图;
[0019]图2为本专利技术实施例提供的一种应用系统的组件示意图;
[0020]图3为本专利技术实施例提供的另一种系统故障根因定位方法的流程图;
[0021]图4为本专利技术实施例提供的另一种系统故障根因定位方法的流程图;
[0022]图5为本专利技术实施例提供的另一种系统故障根因定位方法的流程图;
[0023]图6为本专利技术实施例提供的一种系统故障根因定位装置的结构示意图;
[0024]图7为本专利技术实施例提供的一种计算机设备的结构示意图。
具体实施方式
[0025]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。
[0026]支付应用系统,例如,商业银行应用系统的稳定运行至关重要,应用系统在运行过程中会产生大量运维数据,包括性能指标Metric数据、业务指标KPI数据、调用链Trace数据和日志Log数据,综合利用这些数据进行分析可以有效检测系统异常,定位故障根因,从而减少故障发现时间、提升故障解决效率。本专利技术实施例提出一种系统故障根因定位方法,综合利用多模态数据,通过算法流程的分析,定位到应用系统故障节点以及反映故障原因的性能指标或日志,从而减少人工分析故障根因的时间和人力成本。
[0027]实施例一
[0028]图1为本专利技术实施例提供的一种系统故障根因定位方法的流程图,本实施例可适用于对应用系统进行测试的情况,应用系统需要在多个服务器上部署不同服务组件,本实施例可有效定位应用系统的故障组件,维持应用系统的稳定运行,该方法可以由系统故障根因定位装置来执行,具体包括如下步骤:
[0029]步骤S101、采集应用系统各个节点的运维数据;运维数据至少包括性能指标数据、业务指标数据、调用链数据以及日志数据。
[0030]图2为本专利技术实施例提供的一种应用系统的组件示意图。应用系统可设置有配置管理数据库(Configuration Management Database,CMDB),CMDB是一个逻辑数据库,包含了配置项全生命周期的信息以及配置项之间的关系(包括物理关系、实时通信关系、非实时通信关系和依赖关系),所谓的CMDB数据是指应用系统的资源部署关系,包含节点和节点之间的边关系。本实施例中节点为应用系统的各个组件,其中,CMDB包含应用系统各个组件的主机、IP、端口、应用和域名。组件为构成应用系统的子模块,以图2所示的应用系统为例,其中Nginx01、Nginx02、Tomcat01、Redis01、MySQL01和MySQL02等均表示系统组件,每个组件有唯一配置的名称cmdb_id。其中,Nginx01和Nginx02为高性能的HTTP和反向代理web服务器;Tomcat01为应用(Java)服务器;Redis01为Key

Value数据库;MySQL01和MySQL02为关系型数据库管理系统,可知,上述组件可以为应用系统中各个服务器或数据库。为方便阐述和理解,本专利技术实施例中组件一般称为节点。
[0031]其中,性能指标Met本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种系统故障根因定位方法,其特征在于,包括:采集应用系统各个节点的运维数据;所述运维数据至少包括性能指标数据、业务指标数据、调用链数据以及日志数据;根据所述调用链数据获取节点实际耗时,并根据所述日志数据获取节点日志数据量的时序数据;通过时间序列异常检测算法对所述性能指标数据、所述节点实际耗时和所述节点日志数据量进行异常检测;根据异常日志规则库对日志内容进行异常检测;并对所述业务指标数据进行异常检测;根据所述异常检测获取异常节点的异常日志和合并异常分值;并根据所述异常日志和合并异常分值输出根因节点及其对应的根因指标和/或根因日志。2.根据权利要求1所述的系统故障根因定位方法,其特征在于,所述性能指标数据包括下述至少一项:CPU指标数据、内存指标数据和磁盘指标数据;所述调用链数据至少包括:调用节点耗时;所述调用节点耗时包括子调用耗时;所述业务指标数据包括下述至少一项:系统响应率、成功率、交易量和平均响应时间;所述日志数据至少包括:日志时间戳、节点、日志文件名和所述日志内容。3.根据权利要求1所述的系统故障根因定位方法,其特征在于,根据所述调用链数据获取节点实际耗时,包括:获取调用中调用节点耗时与其子调用耗时的差值,作为每个调用中每个节点的实际处理耗时;获取当前时间包含该节点的全部调用的实际处理耗时的平均值作为所述节点实际耗时;根据所述日志数据获取节点日志数据量的时序数据,包括:将连续的日志文本数据转换为日志数据量的离散的时序数据;将每分钟采样到每个节点的日志数据量作为节点日志数据量。4.根据权利要求1所述的系统故障根因定位方法,其特征在于,根据所述异常检测获取异常节点的异常日志和合并异常分值,包括:所述性能指标数据经过异常检测输出异常节点、异常性能指标和异常分值;所述节点实际耗时和所述节点日志数据量经过异常检测输出异常节点和异常分值;所述日志内容经过异常检测输出异常节点和异常日志;所述业务指标数据经过异常检测输出当前时间的业务指标异常分值;获取所述异常节点的合并异常分值:score=mscore
×
m_ratio+tscore
×
t_ratio+lscore
×
l_ratio+kscore;其中,mscore表示异常性能指标的异常分值,m_ratio为异常性能指标的权重参数;tscore表示异常节点的节点实际耗时的异常分值,t_ratio表示节点实际耗时的权重参数;lscore为异常节点的节点日志数据量的异常分值,l_ratio表示节点日志数据量的权重参数;kscore为业务指标数据的异常分值;将所述异常日志和所述合并异常分值合并至对应异常节点;根据所述异常日志和合并异常分值输出根因...

【专利技术属性】
技术研发人员:穆琼蔡欣耿鹏张梓聪王哲
申请(专利权)人:中国农业银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1