CN117950891A - 业务异常的处理方法、装置、电子设备及存储介质 - Google Patents

业务异常的处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117950891A
CN117950891A CN202311085649.3A CN202311085649A CN117950891A CN 117950891 A CN117950891 A CN 117950891A CN 202311085649 A CN202311085649 A CN 202311085649A CN 117950891 A CN117950891 A CN 117950891A
Authority
CN
China
Prior art keywords
application instance
abnormal
instance
analyzed
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311085649.3A
Other languages
English (en)
Inventor
黄奕鑫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mashang Xiaofei Finance Co Ltd
Original Assignee
Mashang Xiaofei Finance Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mashang Xiaofei Finance Co Ltd filed Critical Mashang Xiaofei Finance Co Ltd
Priority to CN202311085649.3A priority Critical patent/CN117950891A/zh
Publication of CN117950891A publication Critical patent/CN117950891A/zh
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本公开实施例提供了一种业务异常的处理方法、装置、电子设备以及存储介质,业务异常的处理方法包括:获取应用实例集合中每个应用实例的指标监测数据;应用实例集合包括异常应用实例和N个待分析应用实例;基于指标监测数据,确定每个待分析应用实例与异常应用实例之间的线性相关性系数和非线性相关性系数;根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到相关性评价信息;根据相关性评价信息确定导致异常应用实例存在异常的异常根因实例。本申请能够提升定位应用实例的准确性。

Description

业务异常的处理方法、装置、电子设备及存储介质
技术领域
本申请涉及运维技术领域,尤其涉及一种业务异常的处理方法、装置、电子设备及存储介质。
背景技术
随着电子技术的发展,各行各业的系统规模越来越大。系统规模越大,针对系统的运维工作的难度随之上升。运维,是对网络、服务器、服务的生命周期各个阶段的运营与维护,在成本、稳定性、效率上达成一致可接受的状态。
系统可以包括多个存在复杂的调用关系的部署单元,每个部署单元可以看做是一个实例,当检测到其中一个实例的指标数据发生异常时,该实例往往不是导致异常发生的根源,该情况下需要尽快找到该导致异常发生的根源,针对作为根源的实例进行运维,以使系统恢复到正常运行的状态。然而,若寻找得到的异常根源不准确,反而会降低运维效率,使系统对应的业务难以正常运行。
发明内容
本申请实施例提供了一种业务异常的处理方法、装置、电子设备及存储介质,以在运维场景中提高确定导致异常的根源实例的准确性。
第一方面,本申请实施例提供了一种业务异常的处理方法,包括:
获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;所述应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,所述异常应用实例的指标监测数据满足异常条件;
基于所述异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与所述异常应用实例之间的线性相关性系数和非线性相关性系数;
根据每个待分析应用实例与所述异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于所述每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与所述异常应用实例之间的相关性评价信息;
根据所述相关性评价信息确定导致所述异常应用实例存在异常的异常根因实例。
第二方面,本申请实施例提供了一种业务异常的处理装置,所述装置包括:
获取单元,用于获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;所述应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,所述异常应用实例的指标监测数据满足异常条件;
第一确定单元,用于基于所述异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与所述异常应用实例之间的线性相关性系数和非线性相关性系数;
加权单元,用于根据每个待分析应用实例与所述异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于所述每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与所述异常应用实例之间的相关性评价信息;
第二确定单元,用于根据所述相关性评价信息确定导致所述异常应用实例存在异常的异常根因实例。
第三方面,本申请实施例提供了一种电子设备,包括:处理器;以及,被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器执行如第一方面所述的业务异常的处理方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现如第一方面所述的业务异常的处理方法。
可以看出,在本申请实施例中,首先,获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,异常应用实例的指标监测数据满足异常条件;然后,基于异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与异常应用实例之间的线性相关性系数和非线性相关性系数;接着,根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与异常应用实例之间的相关性评价信息;最后,根据相关性评价信息确定导致异常应用实例存在异常的异常根因实例。以此,一方面,用于对异常应用实例进行异常分析的N个待分析应用实例均为存在导致异常应用实例发生异常的可能性的应用实例,线性相关性系数可以反映异常应用实例与待分析应用实例之间的线性相关性的大小,非线性相关性系数可以反映异常应用实例与待分析应用实例之间的非线性相关性的大小,进而,相关性评价信息可以从线性相关性和非线性相关性两个维度综合评估待分析应用实例导致异常应用实例发生异常的可能性,提升定位应用实例的准确性;另一方面,考虑到距离异常应用实例越近的待分析应用实例,其指标监测数据的异常变化越容易呈线性相关,而距离越远的待分析应用实例,其指标监测数据的异常变化越容易呈非线性相关,利用每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,可以在生成不同的待分析应用实例的相关性评价信息时分别采用对应的相关性权重,使得相关性评价信息能够更准确地反映待分析应用实例导致异常应用实例发生异常的可能性,提升定位应用实例的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图;
图1为本申请实施例提供的一种业务异常的处理方法的处理流程图;
图2为本申请实施例提供的一种业务异常的处理方法的功能框图;
图3为本申请实施例提供的另一种业务异常的处理方法的处理流程图;
图4为本申请实施例提供的一种业务异常的处理装置示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请实施例中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本申请实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请的保护范围。
本说明书提供的一种业务异常的处理方法实施例:在运维场景中,系统包括的多个存在复杂的调用关系的部署单元共同实现服务,每个部署单元可以视为一个应用实例,当检测到其中某个应用实例的指标数据出现异常时,该应用实例往往不是引发异常的根源,该情况下需要尽快找出作为该异常的根源的应用实例进行针对性地运维,才能够使系统重新恢复正常运行。若寻找得到的作为异常根源的应用实例不准确,可能会误导运维人员将运维工作的时间精力放到错误的地方,反而降低了运维效率,使得系统对应的业务无法正常运行,可能带来经济损失和安全风险,并降低了用户的满意程度。为了解决上述问题,本申请实施例提供了一种业务异常的处理方法。
图1为本申请实施例提供的一种业务异常的处理方法的处理流程图。该业务异常的处理方法可由电子设备执行,具体可以由电子设备的处理器执行,电子设备可以包括终端或者服务器,终端可以包括手机、笔记本电脑、智能可穿戴设备、车载终端等设备,服务器可以包括独立的物理服务器、由多个服务器组成的服务器集群或者能够进行云计算的云服务器。参照图1,本实施例提供的业务异常的处理方法,具体包括步骤S102至步骤S108。
步骤S102,获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,异常应用实例的指标监测数据满足异常条件。
N可以是大于等于1的自然数。
电子设备上可以安装有各种各样的应用程序,各个应用程序分别可以为用户提供对应的服务。
例如,购物APP(application,应用程序)可以为用户提供线上交易服务、快递查询服务、比价服务,等等。资源借贷APP可以为用户提供多种类型的资源借贷服务。身份验证APP可以为用户提供二维码生成服务、验证记录查询服务,等等。
在应用程序处于工作状态的情况下,应用程序对应的业务可以视为正在运行中,应用程序被容器化。
应用实例可以是在应用程序容器化后应用程序所包括的部署单元。即,一个部署单元可以看做是一个应用实例。各个应用实例之间可以存在调用关系。
通过多个相互调用的应用实例,可以共同实现一个第一级别的服务,其中,每个应用实例用于实现一个第二级别的服务。
第一级别和第二级别可以是预先配置的两个不同的服务级别,服务级别用于描述服务规模大小,第一级别对应的服务规模大于第二级别对应的服务规模。
例如,在购物APP容器化后,购物APP包括多个应用实例:应用实例1是登录实例,应用实例2是购物车处理实例,应用实例3是订单处理实例,应用实例4是支付实例……等等。
登录实例用于实现APP登录服务;购物车处理实例用于实现购物车的商品添加、商品删除、商品数量编辑等服务;订单处理实例用于实现订单建立、订单撤销等服务;支付实例用于实现订单支付服务。通过前述的多个应用实例,可以共同实现线上交易服务。
示例性地,应用实例可以是应用程序容器化后,应用程序所包括的最小部署单元Pod。
Pod是Kubernetes中最小的可部署对象,它是一个包含一个或多个容器的单元。
在一个Pod中,所有的容器共享同一个网络命名空间、IP(Internet Protocol,网际互连协议)地址和存储卷等资源。Pod是可以水平扩展的,可以根据需要创建多个Pod实例来处理负载。
Pod是Kubernetes中最基本的调度单位,Kubernetes通过Pod来实现应用程序的部署。Pod可以被Kubernetes自动管理,也可以手动管理。当一个Pod被创建时,Kubernetes会为其分配一个唯一的Pod ID,并将其调度到一个节点上运行。
Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。在生产环境中部署一个应用程序时,通常要部署该应用的多个实例以便对应用请求进行负载均衡。
本步骤中的应用实例集合可以通过对目标应用程序容器化生成,该应用实例集合中每个应用实例均为容器化后的目标应用程序所包括的一个部署单元。目标应用程序可以是存在运维需求的应用程序。本实施例以目标应用程序为例说明在系统的运维过程中如何确定异常根源。
业务指标可以包括QPS、RT和EC中任意一个或多个。
因此,指标监测数据包括且不限于:RT(Response Time,响应时间)、EC(ErrorCount,出错数量)以及QPS(Queries-per-second,处理流量数)。
在无特殊说明的情况下,本申请实施例下面可以上述任意一种业务指标为例进行介绍,比如以业务指标为QPS为例,详细介绍以该指标为基础监控指标,当异常应用实例的该指标发生异常时,如果分析异常原因。
对于其他任意指标,分析异常原因的方法与任意一个指标的异常分析方法是相同的,本申请不再一一赘述。
其中,RT用于表示应用实例之间发生调用时的响应时间。
具体实施时,获取一个应用实例的RT值,可以是获取该应用实例在预设时间长度内RT值的平均值。
EC用于表示应用实例本身在一段时间内报出的错误数量。
具体实施时,获取一个应用实例的EC值,可以是获取该应用实例在预设时间长度内EC值的平均值。
QPS用于表示实例在指定时间长度内处理流量数。
具体实施时,获取一个应用实例的QPS值,可以是获取该应用实例在预设时间长度内QPS值的平均值。
获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据,可以是获取每个应用实例的RT值、EC值以及QPS值中的至少一者。
在业务指标所对应的应用实例集合中,每个应用实例的指标监测数据可以包括该业务指标的实时监测数值,例如,在业务指标包括RT的情况下,该业务指标所对应的应用实例集合中每个应用实例的指标监测数据包括该应用实例的RT值,等等。
应用实例集合可以包括异常应用实例和非异常应用实例。
非异常应用实例可以包括用于对异常应用实例进行异常分析的N个待分析应用实例,N为大于0的自然数。
非异常应用实例的数量可以大于等于待分析应用实例的数量。
异常应用实例可以是应用实例集合中指标监测数据满足异常条件的应用实例。
异常条件可以是预先配置的用于判断指标监测数据是否出现异常的判断条件或是基于历史数据分布,通过数理统计方法(例如3-sigma)得到的异常阈值,一旦指标监测数据超过该阈值则视为发生异常。
例如,异常条件包括RT值大于等于第一预设阈值,异常条件包括EC值大于等于第二预设阈值,异常条件包括QPS值小于等于第三预设阈值,等等。
非异常应用实例可以是应用实例集合中除异常应用实例外的应用实例。
待分析应用实例是应用实例集合中用于对异常应用实例进行异常分析的应用实例。
一个异常应用实例可以对应于N个待分析应用实例。
具体实施时,可以通过如下方式确定应用实例是否满足异常条件:
针对应用实例集合中的每个应用实例,根据该应用实例的指标监测数据的指标类型,在异常条件中确定该指标类型对应的参考阈值;根据该应用实例的指标监测数据和该参考阈值进行数值大小比较,得到比较结果;根据该比较结果确定该应用实例是否满足异常条件。
示例性地,指标监测数据的指标类型包括且不限于:RT、EC、QPS。在异常指标监测条件中,RT对应的参考阈值为第一预设阈值,EC对应的参考阈值为第二预设阈值,QPS对应的参考阈值为第三预设阈值。
需要说明的是,在指标监测数据的指标类型大于一个的情况下,根据该大于一个指标类型中的每个指标类型,分别确定对应的比较结果:
(a1)在该多个比较结果中,若一部分比较结果符合异常条件,且另一部分比较结果不符合异常条件,则确定该应用实例满足异常条件。
根据该与异常条件匹配的比较结果对应的指标类型,可以在指标监测数据中确定异常指标值。
例如,异常条件包括RT值大于等于第一预设阈值,EC值大于等于第二预设阈值,QPS值小于等于第三预设阈值。
应用实例1的指标监测数据包括RT值、EC值以及QPS值,则指标监测数据的指标类型包括:RT、EC、QPS。
RT对应的比较结果为:RT值大于第一预设阈值。
EC对应的比较结果为:EC值小于第二预设阈值。
QPS对应的比较结果为:QPS值大于第三预设阈值。
其中,RT对应的比较结果符合异常条件,EC对应的比较结果不符合异常条件,QPS对应的比较结果不符合异常条件,则应用实例1满足异常条件,且异常指标值为RT值。
(a2)在该多个比较结果中,若每个比较结果均符合异常条件,则确定该应用实例满足异常条件。
另外,可以将该指标监测数据中每个指标类型对应的数据均确定为异常指标值。
例如,异常条件包括RT值大于等于第一预设阈值,EC值大于等于第二预设阈值,QPS值小于等于第三预设阈值。
应用实例2的指标监测数据包括RT值、EC值以及QPS值,则指标监测数据的指标类型包括:RT、EC、QPS。
RT对应的比较结果为:RT值大于第一预设阈值。
EC对应的比较结果为:EC值大于第二预设阈值。
QPS对应的比较结果为:QPS值小于第三预设阈值。
其中,RT对应的比较结果符合异常条件,EC对应的比较结果符合异常条件,QPS对应的比较结果符合异常条件,则应用实例2满足异常条件,且异常指标值包括RT值、EC值以及QPS值。
(a3)在该多个比较结果中,若每个比较结果均不符合异常条件,则确定该应用实例不满足异常条件。
在应用实例不满足异常条件的情况下,该指标监测数据中不存在异常指标值。
例如,异常条件包括RT值大于等于第一预设阈值,EC值大于等于第二预设阈值,QPS值小于等于第三预设阈值。
应用实例3的指标监测数据包括RT值、EC值以及QPS值,则指标监测数据的指标类型包括:RT、EC、QPS。
RT对应的比较结果为:RT值小于第一预设阈值。
EC对应的比较结果为:EC值小于第二预设阈值。
QPS对应的比较结果为:QPS值大于第三预设阈值。
其中,RT对应的比较结果不符合异常条件,EC对应的比较结果不符合异常条件,QPS对应的比较结果不符合异常条件,则应用实例3不满足异常条件,应用实例3的指标监测数据中不存在异常指标值。
在应用实例集合中每个应用实例均不满足异常条件的情况下,目标应用程序一切正常,不需要进行额外的运维处理。
在应用实例集合中存在至少一个应用实例满足异常条件的情况下,目标应用程序出现异常,存在快速定位导致异常的根源的需求。
在根据指标监测数据确定对应的应用实例满足异常条件的情况下,将满足异常条件的应用实例作为异常应用实例。
异常应用实例可以是在目标应用程序的运行过程中检测到的应用实例集合中首个满足异常条件的应用实例。
在一种具体的实现方式中,N个待分析应用实例是根据异常应用实例的指标监测数据和应用实例集合中待分析应用实例的指标监测数据确定的;根据异常应用实例的指标监测数据和应用实例集合中待分析应用实例的指标监测数据确定N个待分析应用实例,包括:从异常应用实例的指标监测数据中确定异常指标值;在异常指标值对应于第一类型指标的情况下,将应用实例集合中直接调用或间接调用异常应用实例的应用实例添加到待分析应用实例;在异常指标值对应于第二类型指标的情况下,将应用实例集合中异常应用实例直接调用或间接调用的应用实例添加到待分析应用实例。
应用实例集合中每个应用实例的指标监测数据可以包括该应用实例的RT值、EC值以及QPS值中的至少一者。
从异常应用实例的指标监测数据中确定异常指标值,可以是在异常应用实例的指标监测数据中,将符合异常条件的比较结果对应的指标类型的数据确定为异常指标值,可以参照前文(a1)-(a3)的示例。
在确定待分析应用实例之前,可以预先根据应用实例集合中每个应用实例之间的调用关系,构建应用实例集合对应的网络结构拓扑图。
该网络结构拓扑图可以包括多个节点和多个边。
该多个节点中每个节点分别用于表示应用实例集合中的一个应用实例。
该多个边中每个边可以是有向的边,即具有箭头的边,每个边可以用于表示该边连接的两个节点分别对应的两个应用实例之间的调用关系。
例如,A节点通过边1与B节点连接,且该边1由A节点指向B节点。A节点用于表示应用实例1,B节点用于表示应用实例2。该边1用于表示应用实例1直接调用应用实例2。
又例如,A节点通过边1与B节点连接,且该边1由A节点指向B节点。B节点通过边2与C节点连接,且该边由B节点指向C节点。A节点用于表示应用实例1,B节点用于表示应用实例2,C节点用于表示应用实例3。该边1用于表示应用实例1直接调用应用实例2,该边2用于表示应用实例2直接调用应用实例3,另外,应用实例1间接调用应用实例3。
在生成应用实例集合对应的网络结构拓扑图之后,可以在该网络结构拓扑图中确定异常应用实例对应的节点,得到异常节点。
将应用实例集合中直接调用或间接调用异常应用实例的应用实例添加到待分析应用实例,可以是,在应用实例集合对应的网络结构拓扑图中,将位于异常节点的调用链路的上游的每个节点对应的应用实例确定为一个待分析应用实例。
将应用实例集合中异常应用实例直接调用或间接调用的应用实例添加到待分析应用实例,可以是,在应用实例集合对应的网络结构拓扑图中,将位于异常节点的调用链路的下游的每个节点对应的应用实例确定为一个待分析应用实例。
通过确定异常指标值对应于第一类型指标或第二类型指标,可以在应用实例集合中异常应用实例之外的应用实例中排除掉一部分不可能导致异常应用实例满足异常条件的应用实例,从而缩小异常根因实例的确定范围,该异常根因实例为导致异常应用实例存在异常的应用实例。
示例性地,第一类型指标包括RT和EC。第二类型指标包括QPS。
在确定异常指标值为RT值和EC值中的至少一者的情况下,将应用实例集合中直接调用或间接调用异常应用实例的应用实例添加到待分析应用实例;在确定异常指标值为QPS值的情况下,将应用实例集合中异常应用实例直接调用或间接调用的应用实例添加到待分析应用实例。
在一种具体的实现方式中,N个待分析应用实例是根据异常应用实例的指标监测数据和应用实例集合中待分析应用实例的指标监测数据确定的;根据异常应用实例的指标监测数据和应用实例集合中待分析应用实例的指标监测数据确定N个待分析应用实例,包括:从异常应用实例的指标监测数据中确定异常指标类型,并基于异常指标类型对应的应用实例扩散方向中确定候选实例集合;根据异常实业务例与候选实例集合中每个应用实例之间的距离,确定候选实例集合所包括的至少一个实例链路中每个实例链路的计算执行顺序;按照每个实例链路的计算执行顺序依次计算每个实例链路中每个应用实例与异常应用实例之间的实例相关性;在每个实例链路满足计算停止条件后,将每个实例链路中实例相关性大于预设相关性阈值的应用实例添加为待分析应用实例。
从异常应用实例的指标监测数据中确定异常指标类型,可以是在异常应用实例的指标监测数据中,将符合异常条件的比较结果对应的指标类型确定为异常指标类型,可以参照前文(a1)-(a3)的示例。
基于异常指标类型对应的应用实例扩散方向中确定候选实例集合,可以包括:
在异常指标类型对应于第一类型指标的情况下,将应用实例集合中直接调用或间接调用异常应用实例的应用实例添加到候选实例集合;
在异常指标类型对应于第二类型指标的情况下,将应用实例集合中异常应用实例直接调用或间接调用的应用实例添加到候选实例集合。
示例性地,第一类型指标包括RT和EC。第二类型指标包括QPS。
根据异常实业务例与候选实例集合中每个应用实例之间的距离,确定候选实例集合所包括的至少一个实例链路中每个实例链路的计算执行顺序。
下面可以结合应用实例集合对应的网络结构拓扑图来具体说明应用实例之间的距离以及实例链路等概念。
应用实例集合对应的网络结构拓扑图可以基于应用实例集合中的多个应用实例以及各个应用实例之间的调用关系生成。
应用实例集合对应的网络结构拓扑图可以包括多个节点以及多个边,每个节点分别对应于应用实例集合中的一个应用实例,每个边可以用于表示该边连接的两个节点分别对应的两个应用实例之间的调用关系。
在网络拓扑结构图中,可以将异常应用实例对应的节点称为异常节点。
候选实例集合中每个应用实例可以对应于网络拓扑结构图中的一个节点。在异常指标类型对应于第一类型指标的情况下,该节点可以是位于异常节点的调用链路的下游的一个节点;在异常指标类型对应于第二类型指标的情况下,该节点可以是位于异常节点的调用链路的上游的一个节点。
前述的异常指标类型对应的应用实例扩散方向可以是沿着调用链路向上,或者,沿着调用链路向下。
基于异常指标类型对应的应用实例扩散方向中确定候选实例集合,还可以包括:
在应用实例扩散方向为沿着调用链路向上的情况下,在应用实例集合对应的网络结构拓扑图中,将位于异常节点的调用链路的上游的每个节点对应的应用实例添加至候选实例集合;
在应用实例扩散方向为沿着调用链路向下的情况下,在应用实例集合对应的网络结构拓扑图中,将位于异常节点的调用链路的下游的每个节点对应的应用实例添加至候选实例集合。
异常实业务例与候选实例集合中每个应用实例之间的距离可以通过如下方式确定:
在网络拓扑结构图中,确定异常应用实例对应的异常节点与候选实例集合中每个应用实例对应的节点之间的最短路径;根据最短路径包括的边的数量,确定异常实业务例与候选实例集合中每个应用实例之间的距离。
每个实例链路可以包括多个应用实例,实例链路对应的拓扑图可以包括网络拓扑结构图中的多个节点以及该多个节点中相邻两个节点之间的有向边。
每个实例链路对应的拓扑图可以包括依次排列的K个节点,K为大于1的自然数。
对于第1个节点,该第1个节点与一个有向边连接,该有向边是由该第1个节点指向相邻的第2个节点。
对于第2个至第K-1个节点中任意一个节点,例如,节点k,k为自然数,k≥2且k≤K-1,节点k可以分别与两个有向边连接,一个有向边是由该节点k的上一个相邻的节点k-1指向该节点k,另一个有向边是由该节点k指向下一个相邻的节点k+1。
对于第K个节点,该第K个节点与一个有向边连接,该有向边是由该第K个节点相邻的第K-1个节点指向该第K个节点。
在每个实例链路对应的拓扑图中不存在由同一个节点出发的两个有向边分别指向两个不同的节点。
示例性地,候选实例集合包括应用实例1、应用实例2以及应用实例3。
其中:
应用实例1对应于网络拓扑结构图中位于异常节点的调用链路的下游的节点1;
应用实例2对应于网络拓扑结构图中位于异常节点的调用链路的下游的节点2;
应用实例3对应于网络拓扑结构图中位于异常节点的调用链路的下游的节点3。
(b1)第一种结构如下所示:
异常节点与节点1之间通过边1连接,节点1与节点2之间通过边2连接,节点2与节点3之间通过边3连接,且异常节点与节点2之间不存在边,异常节点与节点3之间不存在边,节点1与节点3之间不存在边。
在第一种结构中,应用实例集合包括的一条实例链路:
应用实例1—>应用实例2—>应用实例3。该实例链路对应的拓扑图为:节点1—>节点2—>节点3。
在第一种结构中,异常实业务例与候选实例集合中的应用实例1之间的距离为1个预设单位;异常实业务例与候选实例集合中的应用实例2之间的距离为2个预设单位;异常实业务例与候选实例集合中的应用实例3之间的距离为3个预设单位。
(b2)第二种结构如下所示:
异常节点与节点1之间通过边1连接,节点1与节点2之间通过边2连接,节点1与节点3之间通过边3连接,且异常节点与节点2之间不存在边,异常节点与节点3之间不存在边,节点2与节点3之间不存在边。
在第二个结构中,应用实例集合包括两条实例链路:
实例链路1:应用实例1—>应用实例2;该实例链路1对应的拓扑图为节点1—>节点2。
实例链路2:应用实例1—>应用实例3;该实例链路2对应的拓扑图为节点1—>节点3。
在第二个结构中,异常实业务例与候选实例集合中的应用实例1之间的距离为1个预设单位;异常实业务例与候选实例集合中的应用实例2之间的距离为2个预设单位;异常实业务例与候选实例集合中的应用实例3之间的距离为2个预设单位。
每个实例链路的计算执行顺序用于表示在该实例链路包括多个应用实例的情况下,计算应用实例与异常应用实例之间的实例相关性的执行顺序。
例如,实例链路1包括3个应用实例:应用实例1、应用实例2以及应用实例3,实例链路1的计算执行顺序可以是:应用实例1—>应用实例3—>应用实例2。即先计算应用实例1与异常应用实例之间的实例相关性,再计算应用实例3与异常应用实例之间的实例相关性,最后计算应用实例2与异常应用实例之间的实例相关性。
根据异常实业务例与候选实例集合中每个应用实例之间的距离,确定候选实例集合所包括的至少一个实例链路中每个实例链路的计算执行顺序,可以包括:
针对每个实例链路,按照数值大小对该实例链路包括的每个应用实例分别与异常应用实例之间的距离进行排序,得到排序结果,根据该排序结果,确定该实例链路的计算执行顺序。
例如,实例链路1包括3个应用实例:应用实例1、应用实例2以及应用实例3,应用实例1与异常应用实例之间的距离为1个预设单位,应用实例2与异常应用实例之间的距离为2个预设单位,应用实例3与异常应用实例之间的距离为3个预设单位,则实例链路1的计算执行顺序可以是:应用实例1—>应用实例2—>应用实例3。即先计算应用实例1与异常应用实例之间的实例相关性,再计算应用实例2与异常应用实例之间的实例相关性,最后计算应用实例3与异常应用实例之间的实例相关性。
按照每个实例链路的计算执行顺序依次计算每个实例链路中每个应用实例与异常应用实例之间的实例相关性。
实例相关性可以通过用于描述两个应用实例之间的相关性的参数表示。
需要注意的是,候选实例集合对应的多个实例链路中,可能有多个实例链路存在重叠的部分,在任意两个实例链路存在重叠部分的情况下,该重叠部分只计算一次。
计算停止条件可以是实例相关性小于等于预设相关性阈值。
在每个实例链路满足计算停止条件后,将每个实例链路中实例相关性大于预设相关性阈值的应用实例添加为待分析应用实例。
步骤S104,基于异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与异常应用实例之间的线性相关性系数和非线性相关性系数。
示例性地,线性相关性系数可以是pearson相关性系数。应用实例i和应用实例j之间的pearson相关性系数可以用corrpearson(i,j)表示。i和j可以是两个不同的非零自然数。
基于异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与异常应用实例之间的线性相关性系数,可以包括:
基于异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,计算每个待分析应用实例与异常应用实例之间的pearson相关性系数。
非线性相关性系数可以是spearman相关性系数,应用实例i和应用实例j之间的spearman相关性系数可以用corrsparman(i,j)表示。i和j可以是两个不同的非零自然数。
基于异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与异常应用实例之间的非线性相关性系数,可以包括:
基于异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,计算每个待分析应用实例与异常应用实例之间的spearman相关性系数。
步骤S106,根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与异常应用实例之间的相关性评价信息。
针对每个待分析应用实例,该待分析应用实例与异常应用实例的距离可以通过网络拓扑结构图中该待分析应用实例对应的节点与异常应用实例对应的异常节点之间的最短路径所包括的边的数量确定。
出于相同的技术构思,在应用实例集合中,任意两个应用实例的距离可以通过网络拓扑结构图中该两个应用实例分别对应的节点之间的最短路径所包括的边的数量确定。
具体地,两个应用实例的距离的单位可以是自定义配置的预设单位,距离的数值由最短路径所包括的边的数量确定。
根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,可以是根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定非线性相关性系数的权重值,进而将预设数值与该非线性相关系数的权重值的差值确定为线性相关性系数的权重值。
示例性地,预设数值可以是1。
根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,也可以是根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定线性相关性系数的权重值,进而将预设数值与该线性相关系数的权重值的差值确定为非线性相关性系数的权重值。
针对每个待分析应用实例,该待分析应用实例与异常应用实例之间的相关性评价信息,可以用于从线性相关性和非线性相关性两个维度综合评价该待分析应用实例与异常应用实例是否相关。
在一种具体的实现方式中,每个待分析应用实例的相关性权重包括线性相关权重和非线性相关权重;根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,包括:根据应用实例集合中两两应用实例之间的距离,确定距离中位数;根据距离中位数,以及第i个待分析应用实例与异常应用实例之间的距离,生成第i个待分析应用实例的非线性相关权重;第i个待分析应用实例是指N个待分析应用实例中任意一个;将预设数值和第i个待分析应用实例的非线性相关权重之间的差值,作为第i个待分析应用实例的线性相关权重。
线性相关权重可以是线性相关性系数对应的权重值。
非线性相关权重可以是非线性相关性系数对应的权重值。
根据应用实例集合中两两应用实例之间的距离,确定距离中位数,可以是按照数值大小对两两应用实例之间的距离进行排序,得到排序结果,基于该排序结果确定中位数,得到距离中位数。
例如,应用实例集合包括4个应用实例:应用实例1、应用实例2、应用实例3以及应用实例4。则应用实例集合中两两应用实例之间的距离,可以包括:
(c1)应用实例1与应用实例2之间的距离l1;
(c2)应用实例1与应用实例3之间的距离l2;
(c3)应用实例1与应用实例4之间的距离l3;
(c4)应用实例2与应用实例3之间的距离l4;
(c5)应用实例2与应用实例4之间的距离l5;
(c6)应用实例3与应用实例4之间的距离l6。
对l1至l6六个距离按照数值大小进行排序,得到排序结果:l1<l2=l5<l3=l6<l4。
基于排序结果确定该六个距离的中位数,得到距离中位数(l5+l3)/2。
根据距离中位数,以及第i个待分析应用实例与异常应用实例之间的距离,生成第i个待分析应用实例的非线性相关权重,可以参照下述公式(1)。i为大于0的自然数。
其中,异常应用实例可以用应用实例j表示,第i个待分析应用实例可以用应用实例i表示,αi,j用于表示第i个待分析应用实例的非线性相关权重。
β用于表示先验系数,该先验系数可以是人为指定的超参,用于控制非线性引入的最大权重。
用于表示前述的距离中位数。
Gd(i,j)用于表示异常应用实例与待分析应用实例之间的距离。
e为自然常数。用于表示一个以自然常数e为底的指数函数,为该指数函数的自变量部分。
第i个待分析应用实例可以是N个待分析应用实例中任意一个。
将预设数值和第i个待分析应用实例的非线性相关权重之间的差值,作为第i个待分析应用实例的线性相关权重,可以参照如下公式(2)
示例性地,预设数值可以是1。
γi,j=1-αi,j (2)
其中,异常应用实例可以用应用实例j表示,第i个待分析应用实例可以用应用实例i表示,αi,j用于表示第i个待分析应用实例的非线性相关权重,γi,j用于第i个待分析应用实例的线性相关权重。
另外,在生成非线性相关权重时,可以采用sigmoid函数,该sigmoid函数天然的值域为0到1之间,方便后续处理。在生成非线性相关权重时,也可以采用tanh(),或是Graph中常用的各种距离函数(最小距离、最大无环距离)以及其他考虑到边权重的距离。在生成线性相关权重值时,要保证其和非线性相关权重之和为预设数值“1”,该情况下可以采用Temperature的SoftMax函数。
在一种具体的实现方式中,每个待分析应用实例的相关性权重包括线性相关权重和非线性相关权重;基于每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与异常应用实例之间的相关性评价信息,包括:将第i个待分析应用实例的线性相关系数与第i个待分析应用实例的线性相关权重进行相乘运算得到第一运算结果,以及将第i个待分析应用实例的非线性相关系数与第i个待分析应用实例的非线性相关权重进行相乘运算,得到第二运算结果;第i个待分析应用实例为N个待分析应用实例中任意一个;将第一运算结果与第二运算结果进行相加运算,得到第i个待分析应用实例与异常应用实例之间的相关性评价信息。
i为大于等于1的自然数,且i小于等于N。N为大于1的自然数。
基于每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理的具体计算过程可以参照下述公式(3)。
corri,j=γi,j*corrpearson(i,j)i,j*corrspearman(i,j) (3)
其中,异常应用实例可以用应用实例j表示,第i个待分析应用实例可以用应用实例i表示。
αi,j用于表示第i个待分析应用实例的非线性相关权重。
γi,j用于表示第i个待分析应用实例的线性相关权重。
corrpearson(i,j)用于表示异常应用实例和第i个待分析应用实例之间的pearson相关性系数。
corrspearman(i,j)用于表示异常应用实例和第i个待分析应用实例之间的spearman相关性系数。
γi,j*corrpearson(i,j)用于表示第一运算结果,αi,j*corrspearman(i,j)用于表示第二运算结果。
corri,j用于表示异常应用实例与第i个待分析应用实例之间的相关性评价信息,该相关性评价信息可以综合线性相关性和非线性相关性两个维度的信息反映该第i个待分析应用实例导致异常应用实例存在异常的可能性。
在应用实例集合对应的网络结构拓扑图中,每个节点对应于一个应用实例,由于不同的应用实例本质存在明显区别,其指标监测数据可能既包括线性相关的部分,又包括非线性相关的部分。如果在各个待分析应用实例中确定导致异常应用实例存在异常的异常根因实例时只考虑待分析应用实例与异常应用实例的指标监测数据是否线性相关,基于该线性相关的计算结果定位的异常根因实例很可能是不准确的。因此,在衡量应用实例集合中每个待分析应用实例导致异常应用实例存在异常的可能性时,既需要考虑异常应用实例与待分析应用实例之间的线性相关性,又需要考虑异常应用实例与待分析应用实例之间的非线性相关性。
另外,考虑到对于每个待分析应用实例,该待分析应用实例与异常应用实例之间的距离越小,则该待分析应用实例的指标监测数据的异常变化越容易呈现出线性相关的趋势,该情况下对线性相关性的要求较高,对非线性相关性的要求较低。对于每个待分析应用实例,该待分析应用实例与异常应用实例之间的距离越大,则该待分析应用实例的指标监测数据的异常变化越容易呈现出非线性相关的趋势,该情况下对线性相关性的要求较低,对非线性相关性的要求较高。
据此,根据应用实例集合中两两应用实例之间的距离,确定距离中位数;根据距离中位数,以及第i个待分析应用实例与异常应用实例之间的距离,生成第i个待分析应用实例的非线性相关权重,进而将预设数值和第i个待分析应用实例的非线性相关权重之间的差值,作为第i个待分析应用实例的线性相关权重,可以实现如下效果:
若异常应用实例与待分析应用实例之间的距离越小:
非线性相关权重的数值越小,从而放宽对异常应用实例与待分析应用实例的非线性相关的要求;
线性相关权重的数值越大,从而收紧对异常应用实例与待分析应用实例的线性相关的要求。
若异常应用实例与待分析应用实例之间的距离越大:
非线性相关权重的数值越大,从而收紧对异常应用实例与待分析应用实例的非线性相关的要求;
线性相关权重的数值越小,从而放宽对异常应用实例与待分析应用实例的线性相关的要求。
进而,通过调整线性相关权重和非线性相关权重的数值,可以使得最终计算得到的相关性评价信息更准确地反映对应的待分析应用实例导致异常应用实例存在异常的可能性。
步骤S108,根据相关性评价信息确定导致异常应用实例存在异常的异常根因实例。
异常根因实例可以是导致目标实例的指标监测数据出现异常的应用实例,可以是对应用实例集合进行RCA(Root Cause Analysis,根因分析)处理所得到的根因定位结果。
根据相关性评价信息确定导致异常应用实例存在异常的异常根因实例,可以是将相关性评价信息的数值最大的一个待分析应用实例确定为异常根因实例,也可以是将相关性评价信息的数值最大的预设数量个待分析应用实例确定为异常根因实例。
预设数量可以自定义设置,例如,3个。
在一种具体的实现方式中,每个待分析应用实例与异常应用实例之间的相关性评价信息包括相关性评价分数;根据相关性评价信息确定导致异常应用实例存在异常的异常根因实例,包括:将N个待分析应用实例按照相关性评价分数由大到小进行排序;根据排序结果从N个待分析应用实例中选取排序靠前的预设数量个待分析应用实例作为异常根因实例。。
N可以是大于1的自然数。
相关性评价分数的数值越高,说明异常应用实例与待分析应用实例的相关性越高,则该待分析应用实例是异常根因实例的可能性越大。
相关性评价分数的数值越低,说明异常应用实例与待分析应用实例的相关性越低,则该待分析应用实例是异常根因实例的可能性越小。
按照数值大小,对应用实例集合中N个待分析应用实例的相关性评价分数进行排序,得到排序结果。
排序结果可以包括按照相关性评价分数从大到小依次排序的N个待分析应用实例。
在预设数量为3个的情况下,根据排序结果从N个待分析应用实例中选取排序靠前的预设数量个待分析应用实例作为异常根因实例,可以是将排序结果中的前3个待分析应用实例确定为异常根因实例。即将相关性评价分数的数值最大、第二大以及第三大的三个待分析应用实例确定为异常根因实例。
在一种具体的实现方式中,根据相关性评价信息确定导致异常应用实例存在异常的异常根因实例之后,业务异常的处理方法还包括:为异常根因实例添加告警标识;向运维人员发送告警信息;告警信息携带有异常根因实例的实例标识;当针对告警信息对异常应用实例进行异常处理后,删除异常根因实例的告警标识,并将异常根因实例和异常应用实例写入异常分析记录,以在异常应用实例重新发生异常时,根据异常分析记录对异常应用实例进行初步异常处理。
应用实例集合中每个应用实例可以预先配置有唯一对应的实例标识。
在确定异常根因实例之后,可以向负责目标应用程序的运维的运维人员发送携带有异常根因实例的实例标识的告警信息,从而通知运维人员哪些应用实例是异常根因实例,辅助运维人员尽快完成目标应用程序的运维,减少业务损失。
告警标识用于标记尚未完成异常处理的异常根因节点。在运维人员基于告警信息对异常应用实例进行异常处理,使该异常应用实例恢复到正常工作状态之后,可以删除该异常根因实例的告警标识。
将异常根因实例和异常应用实例写入异常分析记录,可以是将异常根因实例的实例标识与异常应用实例的实例标识关联存储于异常分析记录的存储区域。
通过将异常根因实例和异常应用实例写入异常分析记录,可以积攒异常应用实例的根因定位经验,从而在该异常应用实例再次发生同样类型的异常的情况下,从异常分析记录中读取异常根因实例并基于该异常根因实例进行运维处理,若效果不佳,再切换成如本实施例提供的业务异常的处理方法或其他根因定位方法。
在如图1所示的实施例中,首先,获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,异常应用实例的指标监测数据满足异常条件;然后,基于异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与异常应用实例之间的线性相关性系数和非线性相关性系数;接着,根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与异常应用实例之间的相关性评价信息;最后,根据相关性评价信息确定导致异常应用实例存在异常的异常根因实例。以此,一方面,用于对异常应用实例进行异常分析的N个待分析应用实例均为存在导致异常应用实例发生异常的可能性的应用实例,线性相关性系数可以反映异常应用实例与待分析应用实例之间的线性相关性的大小,非线性相关性系数可以反映异常应用实例与待分析应用实例之间的非线性相关性的大小,进而,相关性评价信息可以从线性相关性和非线性相关性两个维度综合评估待分析应用实例导致异常应用实例发生异常的可能性,提升定位应用实例的准确性;另一方面,考虑到距离异常应用实例越近的待分析应用实例,其指标监测数据的异常变化越容易呈线性相关,而距离越远的待分析应用实例,其指标监测数据的异常变化越容易呈非线性相关,利用每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,可以在生成不同的待分析应用实例的相关性评价信息时分别采用对应的相关性权重,使得相关性评价信息能够更准确地反映待分析应用实例导致异常应用实例发生异常的可能性,提升定位应用实例的准确性。
图2为本申请实施例提供的一种业务异常的处理方法的功能框图。
如图2所示,在应用实例集合中每个应用实例的指标监测数据202中检测到异常的情况下,将结构信息204和指标监测数据202输入到根因分析模块206进行RCA处理,得到异常根因实例,对该异常根因实例进行标记处理,得到标记后的结构信息208并输出。
指标监测数据202可以是应用实例的RT值、EC值以及QPS值中的至少一者的时序数据。
在指标监测数据202中检测到异常,可以是应用实例的RT值、EC值以及QPS值中的至少一者的时序数据发生不正常的突增或突降。此处可以参照图1实施例中异常应用实例的指标监测数据满足异常条件的对应说明部分。
结构信息204可以包括应用实例集合对应的网络结构拓扑图,该网络结构拓扑图可以参照图1实施例对应说明部分。
根因分析模块206的工作处理流程可以参照图1实施例中的步骤S102-步骤S108。
根因分析模块206还可以输出异常根因实例的实例标识,从而协助运维人员提高排查效率,尽快解决问题。
由于技术构思相同,本实施例中描述得比较简单,相关的部分请参见上述提供的方法实施例的对应说明即可。
图3为本申请实施例提供的另一种业务异常的处理方法的处理流程图。
根据应用实例集合中的多个应用实例以及各个应用实例之间的调用关系,可以生成应用实例集合对应的网络结构拓扑图。
如图3所示,在检测到应用实例的指标监测数据满足异常条件的情况下,将该应用实例作为异常应用实例,该异常应用实例对应于网络结构拓扑图中的异常节点302。
示例性地,异常节点302对应的异常应用实例的QPS值出现异常,则向该异常节点302的调用链路的下游探索,探索方式可以是基于实例间具体指标相关性进行判断,若实例间的相关性大于某个阈值,则继续向外扩展,否则停止该链路上的探索。通过探索得到异常链路图,该异常链路图包括异常节点302和多个待分析应用实例对应的节点。
对于异常节点302对应的异常应用实例和每个待分析应用实例,分别进行相关性评价信息的计算,具体地,根据非线性相关性权重308、线性相关性权重310、线性相关性系数306以及非线性相关性系数304,生成异常节点302对应的异常应用实例与待分析应用实例之间的相关性评价信息,从而得到每个待分析应用实例的相关性评价信息的数值大小的排序结果312。该计算过程可以参照图1实施例中对应说明部分。
根据排序结果312输出数值最大的预设数量个异常根因实例314:实例6、实例5以及实例7。
由于技术构思相同,本实施例中描述得比较简单,相关的部分请参见上述提供的方法实施例的对应说明即可。
在上述的实施例中,提供了一种业务异常的处理方法,与之相对应的,基于相同的技术构思,本申请实施例还提供了一种业务异常的处理装置,下面结合附图进行说明。
图4为本申请实施例提供的一种业务异常的处理装置示意图。
本实施例提供一种业务异常的处理装置400,包括:
获取单元402,用于获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;所述应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,所述异常应用实例的指标监测数据满足异常条件;
第一确定单元404,用于基于所述异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与所述异常应用实例之间的线性相关性系数和非线性相关性系数;
加权单元406,用于根据每个待分析应用实例与所述异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于所述每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与所述异常应用实例之间的相关性评价信息;
第二确定单元408,用于根据所述相关性评价信息确定导致所述异常应用实例存在异常的异常根因实例。
可选地,每个待分析应用实例的相关性权重包括线性相关权重和非线性相关权重;加权单元406,具体用于:
将第i个待分析应用实例的线性相关系数与所述第i个待分析应用实例的线性相关权重进行相乘运算得到第一运算结果,以及将所述第i个待分析应用实例的非线性相关系数与所述第i个待分析应用实例的非线性相关权重进行相乘运算,得到第二运算结果;所述第i个待分析应用实例为N个待分析应用实例中任意一个;
将所述第一运算结果与所述第二运算结果进行相加运算,得到所述第i个待分析应用实例与所述异常应用实例之间的相关性评价信息。
可选地,每个待分析应用实例的相关性权重包括线性相关权重和非线性相关权重;加权单元406,具体用于:
根据所述应用实例集合中两两应用实例之间的距离,确定距离中位数;
根据所述距离中位数,以及第i个待分析应用实例与所述异常应用实例之间的距离,生成所述第i个待分析应用实例的非线性相关权重;所述第i个待分析应用实例是指所述N个待分析应用实例中任意一个;
将预设数值和所述第i个待分析应用实例的非线性相关权重之间的差值,作为所述第i个待分析应用实例的线性相关权重。
可选地,所述N个待分析应用实例是根据所述异常应用实例的指标监测数据和所述应用实例集合中待分析应用实例的指标监测数据确定的;
根据所述异常应用实例的指标监测数据和所述应用实例集合中待分析应用实例的指标监测数据确定N个待分析应用实例,包括:
从所述异常应用实例的指标监测数据中确定异常指标值;
在所述异常指标值对应于第一类型指标的情况下,将所述应用实例集合中直接调用或间接调用所述异常应用实例的应用实例添加到所述待分析应用实例;
在所述异常指标值对应于第二类型指标的情况下,将所述应用实例集合中异常应用实例直接调用或间接调用的应用实例添加到所述待分析应用实例。
可选地,每个待分析应用实例与所述异常应用实例之间的相关性评价信息包括相关性评价分数;第二确定单元408,具体用于:
将所述N个待分析应用实例按照相关性评价分数由大到小进行排序;
根据排序结果从所述N个待分析应用实例中选取排序靠前的预设数量个待分析应用实例作为所述异常根因实例。
可选地,所述N个待分析应用实例是根据所述异常应用实例的指标监测数据和所述应用实例集合中待分析应用实例的指标监测数据确定的;
根据所述异常应用实例的指标监测数据和所述应用实例集合中待分析应用实例的指标监测数据确定N个待分析应用实例,包括:
从所述异常应用实例的指标监测数据中确定异常指标类型,并基于所述异常指标类型对应的应用实例扩散方向中确定候选实例集合;
根据所述异常实业务例与所述候选实例集合中每个应用实例之间的距离,确定所述候选实例集合所包括的至少一个实例链路中每个实例链路的计算执行顺序;
按照每个实例链路的计算执行顺序依次计算每个实例链路中每个应用实例与所述异常应用实例之间的实例相关性;
在每个实例链路满足计算停止条件后,将每个实例链路中实例相关性大于预设相关性阈值的应用实例添加为待分析应用实例。
可选地,业务异常的处理装置400还包括:
添加单元,用于为所述异常根因实例添加告警标识;
发送单元,用于向运维人员发送告警信息;所述告警信息携带有所述异常根因实例的实例标识;
记录单元,用于当针对所述告警信息对所述异常应用实例进行异常处理后,删除所述异常根因实例的告警标识,并将所述异常根因实例和所述异常应用实例写入异常分析记录,以在所述异常应用实例重新发生异常时,根据所述异常分析记录对异常应用实例进行初步异常处理。
本申请实施例所提供的业务异常的处理装置包括:获取单元,用于获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,异常应用实例的指标监测数据满足异常条件;第一确定单元,用于基于异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与异常应用实例之间的线性相关性系数和非线性相关性系数;加权单元,用于根据每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与异常应用实例之间的相关性评价信息;第二确定单元,用于根据相关性评价信息确定导致异常应用实例存在异常的异常根因实例。以此,一方面,用于对异常应用实例进行异常分析的N个待分析应用实例均为存在导致异常应用实例发生异常的可能性的应用实例,线性相关性系数可以反映异常应用实例与待分析应用实例之间的线性相关性的大小,非线性相关性系数可以反映异常应用实例与待分析应用实例之间的非线性相关性的大小,进而,相关性评价信息可以从线性相关性和非线性相关性两个维度综合评估待分析应用实例导致异常应用实例发生异常的可能性,提升定位应用实例的准确性;另一方面,考虑到距离异常应用实例越近的待分析应用实例,其指标监测数据的异常变化越容易呈线性相关,而距离越远的待分析应用实例,其指标监测数据的异常变化越容易呈非线性相关,利用每个待分析应用实例与异常应用实例的距离为每个待分析应用实例确定相关性权重,可以在生成不同的待分析应用实例的相关性评价信息时分别采用对应的相关性权重,使得相关性评价信息能够更准确地反映待分析应用实例导致异常应用实例发生异常的可能性,提升定位应用实例的准确性。
对应上述描述的一种业务异常的处理方法,基于相同的技术构思,本申请实施例还提供一种电子设备,该电子设备用于执行上述提供的业务异常的处理方法,图5为本申请实施例提供的一种电子设备的结构示意图。
如图5所示,电子设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器501和存储器502,存储器502中可以存储有一个或一个以上存储应用程序或数据。其中,存储器502可以是短暂存储或持久存储。存储在存储器502的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括电子设备中的一系列计算机可执行指令。更进一步地,处理器501可以设置为与存储器502通信,在电子设备上执行存储器502中的一系列计算机可执行指令。电子设备还可以包括一个或一个以上电源503,一个或一个以上有线或无线网络接口504,一个或一个以上输入/输出接口505,一个或一个以上键盘506等。
在一个具体的实施例中,电子设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对电子设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;所述应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,所述异常应用实例的指标监测数据满足异常条件;
基于所述异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与所述异常应用实例之间的线性相关性系数和非线性相关性系数;
根据每个待分析应用实例与所述异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于所述每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与所述异常应用实例之间的相关性评价信息;
根据所述相关性评价信息确定导致所述异常应用实例存在异常的异常根因实例。
本说明书提供的一种计算机可读存储介质实施例如下:
对应上述描述的一种业务异常的处理方法,基于相同的技术构思,本申请实施例还提供一种计算机可读存储介质。
本实施例提供的计算机可读存储介质,用于存储计算机可执行指令,计算机可执行指令在被处理器执行时实现以下流程:
获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;所述应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,所述异常应用实例的指标监测数据满足异常条件;
基于所述异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与所述异常应用实例之间的线性相关性系数和非线性相关性系数;
根据每个待分析应用实例与所述异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于所述每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与所述异常应用实例之间的相关性评价信息;
根据所述相关性评价信息确定导致所述异常应用实例存在异常的异常根因实例。
需要说明的是,本说明书中关于计算机可读存储介质的实施例与本说明书中关于业务异常的处理方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应方法的实施,重复之处不再赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域内的技术人员应明白,本申请实施例可提供为方法、系统或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程设备的处理器以产生一个机器,使得通过计算机或其他可编程设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书的一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本文件的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本文件可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。

Claims (10)

1.一种业务异常的处理方法,其特征在于,包括:
获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;所述应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,所述异常应用实例的指标监测数据满足异常条件;
基于所述异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与所述异常应用实例之间的线性相关性系数和非线性相关性系数;
根据每个待分析应用实例与所述异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于所述每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与所述异常应用实例之间的相关性评价信息;
根据所述相关性评价信息确定导致所述异常应用实例存在异常的异常根因实例。
2.根据权利要求1所述的方法,其特征在于,每个待分析应用实例的相关性权重包括线性相关权重和非线性相关权重;所述基于所述每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与所述异常应用实例之间的相关性评价信息,包括:
将第i个待分析应用实例的线性相关系数与所述第i个待分析应用实例的线性相关权重进行相乘运算得到第一运算结果,以及将所述第i个待分析应用实例的非线性相关系数与所述第i个待分析应用实例的非线性相关权重进行相乘运算,得到第二运算结果;所述第i个待分析应用实例为N个待分析应用实例中任意一个;
将所述第一运算结果与所述第二运算结果进行相加运算,得到所述第i个待分析应用实例与所述异常应用实例之间的相关性评价信息。
3.根据权利要求1所述的方法,其特征在于,每个待分析应用实例的相关性权重包括线性相关权重和非线性相关权重;所述根据每个待分析应用实例与所述异常应用实例的距离为每个待分析应用实例确定相关性权重,包括:
根据所述应用实例集合中两两应用实例之间的距离,确定距离中位数;
根据所述距离中位数,以及第i个待分析应用实例与所述异常应用实例之间的距离,生成所述第i个待分析应用实例的非线性相关权重;所述第i个待分析应用实例是指所述N个待分析应用实例中任意一个;
将预设数值和所述第i个待分析应用实例的非线性相关权重之间的差值,作为所述第i个待分析应用实例的线性相关权重。
4.根据权利要求1所述的方法,其特征在于,所述N个待分析应用实例是根据所述异常应用实例的指标监测数据和所述应用实例集合中待分析应用实例的指标监测数据确定的;
根据所述异常应用实例的指标监测数据和所述应用实例集合中待分析应用实例的指标监测数据确定N个待分析应用实例,包括:
从所述异常应用实例的指标监测数据中确定异常指标值;
在所述异常指标值对应于第一类型指标的情况下,将所述应用实例集合中直接调用或间接调用所述异常应用实例的应用实例添加到所述待分析应用实例;
在所述异常指标值对应于第二类型指标的情况下,将所述应用实例集合中异常应用实例直接调用或间接调用的应用实例添加到所述待分析应用实例。
5.根据权利要求1所述的方法,其特征在于,每个待分析应用实例与所述异常应用实例之间的相关性评价信息包括相关性评价分数;所述根据所述相关性评价信息确定导致所述异常应用实例存在异常的异常根因实例,包括:
将所述N个待分析应用实例按照相关性评价分数由大到小进行排序;
根据排序结果从所述N个待分析应用实例中选取排序靠前的预设数量个待分析应用实例作为所述异常根因实例。
6.根据权利要求1所述的方法,其特征在于,所述N个待分析应用实例是根据所述异常应用实例的指标监测数据和所述应用实例集合中待分析应用实例的指标监测数据确定的;
根据所述异常应用实例的指标监测数据和所述应用实例集合中待分析应用实例的指标监测数据确定N个待分析应用实例,包括:
从所述异常应用实例的指标监测数据中确定异常指标类型,并基于所述异常指标类型对应的应用实例扩散方向中确定候选实例集合;
根据所述异常实业务例与所述候选实例集合中每个应用实例之间的距离,确定所述候选实例集合所包括的至少一个实例链路中每个实例链路的计算执行顺序;
按照每个实例链路的计算执行顺序依次计算每个实例链路中每个应用实例与所述异常应用实例之间的实例相关性;
在每个实例链路满足计算停止条件后,将每个实例链路中实例相关性大于预设相关性阈值的应用实例添加为待分析应用实例。
7.根据权利要求1所述的方法,其特征在于,所述根据所述相关性评价信息确定导致所述异常应用实例存在异常的异常根因实例之后,还包括:
为所述异常根因实例添加告警标识;
向运维人员发送告警信息;所述告警信息携带有所述异常根因实例的实例标识;
当针对所述告警信息对所述异常应用实例进行异常处理后,删除所述异常根因实例的告警标识,并将所述异常根因实例和所述异常应用实例写入异常分析记录,以在所述异常应用实例重新发生异常时,根据所述异常分析记录对异常应用实例进行初步异常处理。
8.一种业务异常的处理装置,其特征在于,所述装置包括:
获取单元,用于获取业务指标所对应的应用实例集合中每个应用实例的指标监测数据;所述应用实例集合包括异常应用实例和用于对异常应用实例进行异常分析的N个待分析应用实例,所述异常应用实例的指标监测数据满足异常条件;
第一确定单元,用于基于所述异常应用实例的指标监测数据和每个待分析应用实例的指标监测数据,确定每个待分析应用实例与所述异常应用实例之间的线性相关性系数和非线性相关性系数;
加权单元,用于根据每个待分析应用实例与所述异常应用实例的距离为每个待分析应用实例确定相关性权重,并基于所述每个待分析应用实例的相关性权重对每个待分析应用实例的线性相关性系数和非线性相关性系数进行加权处理,得到每个待分析应用实例与所述异常应用实例之间的相关性评价信息;
第二确定单元,用于根据所述相关性评价信息确定导致所述异常应用实例存在异常的异常根因实例。
9.一种电子设备,其特征在于,所述设备包括:
处理器;以及,被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器执行如权利要求1-7任一项所述的业务异常的处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现如权利要求1-7任一项所述的业务异常的处理方法。
CN202311085649.3A 2023-08-25 2023-08-25 业务异常的处理方法、装置、电子设备及存储介质 Pending CN117950891A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311085649.3A CN117950891A (zh) 2023-08-25 2023-08-25 业务异常的处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311085649.3A CN117950891A (zh) 2023-08-25 2023-08-25 业务异常的处理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN117950891A true CN117950891A (zh) 2024-04-30

Family

ID=90800215

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311085649.3A Pending CN117950891A (zh) 2023-08-25 2023-08-25 业务异常的处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117950891A (zh)

Similar Documents

Publication Publication Date Title
CN112162878B (zh) 数据库故障发现方法、装置、电子设备及存储介质
US20190268283A1 (en) Resource Demand Prediction for Distributed Service Network
US11269718B1 (en) Root cause detection and corrective action diagnosis system
Yang et al. A time efficient approach for detecting errors in big sensor data on cloud
US20190034824A1 (en) Supervised learning system training using chatbot interaction
US11222296B2 (en) Cognitive user interface for technical issue detection by process behavior analysis for information technology service workloads
CN111597070B (zh) 一种故障定位方法、装置、电子设备及存储介质
EP3360096A1 (en) Systems and methods for security and risk assessment and testing of applications
CN113935497A (zh) 智能运维故障处理方法、装置、设备及其存储介质
CN109992473B (zh) 应用系统的监控方法、装置、设备及存储介质
CN109194534B (zh) 面向物联网设备群体的调度与管理方法
US10241902B2 (en) Systems and methods for benchmark based cross platform service demand prediction
CN112015618A (zh) 异常告警方法及装置
US20200293970A1 (en) Minimizing Compliance Risk Using Machine Learning Techniques
CN111859047A (zh) 一种故障解决方法及装置
CN114844768A (zh) 信息分析方法、装置及电子设备
CN111913824A (zh) 确定数据链路故障原因的方法及相关设备
US11256598B2 (en) Automated selection of performance monitors
CN110443451B (zh) 事件定级方法、装置、计算机设备和存储介质
US11651271B1 (en) Artificial intelligence system incorporating automatic model updates based on change point detection using likelihood ratios
CN116384921A (zh) 运维事件的执行方法、装置、存储介质以及电子设备
CN117950891A (zh) 业务异常的处理方法、装置、电子设备及存储介质
CN114861909A (zh) 模型质量监控方法、装置、电子设备以及存储介质
US20170154276A1 (en) Event prediction system and method
CN113052509A (zh) 模型评估方法、模型评估装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination