告警收敛方法及系统与流程

文档序号:32664845发布日期:2022-12-24 00:38阅读:37来源:国知局
告警收敛方法及系统与流程

1.本技术涉及运维监测技术领域,具体涉及一种告警收敛方法及一种告警收敛系统。


背景技术:

2.系统告警是系统运维过程中时常会出现的情况,只要满足告警规则,系统运行过程中会收到各式各样的告警信息。这些告警信息产出自系统控制中的各个环节,虽然告警信息是系统运维过程中保证系统稳定运行必不可少的东西,但常理可知,针对不同环节控制,整个系统运行中存在很多控制链,存在于控制链上的所有环节具有很强的关联性,当一个部位存在故障时,因为后续环节无法正常获得在前下发的指令,也可能联动产出很多告警信息。可见,即使是系统中仅存在一处故障,也极有可能产出大量的告警信息,这些大量的告警信息不仅会给短信网关造成巨大压力,还会增大sre的故障监管压力,致使其忽略核心根因告警信息。
3.为了避免这种情况,需要对应的告警收敛方法对告警信息进行分析、合并和丢弃,以此来降低告警信息的规模。目前普遍的告警收敛方法主要是把同类型的告警进行压缩,在一定周期内只发送有限数量的告警到用户端,以此减少告警重复发送的情况,提高告警效率,降低告警疲劳。但现有告警方法普遍存在判断条件单一、灵活性差、误告警信息多的问题,基于此,需要创造一种新的告警收敛方法。


技术实现要素:

4.本技术实施例的目的是提供一种告警收敛方法及系统,以解决现有告警方法普遍存在的判断条件单一、灵活性差、误告警信息多的问题。
5.为了实现上述目的,本技术第一方面提供一种告警收敛方法,所述方法包括:响应于告警发生信号,获取当前告警信息,并基于所述告警信息确定当前告警事件的当前调用链;在预设告警事件库中,判断当前调用链是否存在既往相同告警事件,并基于判断结果确定当前告警事件的执行规则;基于当前告警事件的执行规则执行当前告警事件处理,并基于处理结果进行预设告警事件库更新。
6.在本技术实施例中,所述基于判断结果确定当前告警事件的执行规则,包括:若当前调用链存在既往相同告警事件,则执行收敛规则;若当前调用链不存在既往相同告警事件,则执行冷启动规则。
7.在本技术实施例中,若当前告警事件的执行规则为冷启动规则,所述基于当前告警事件的执行规则执行当前告警事件处理,包括:获取当前调用链的历史日志数据,并从所述历史日志数据中提取历史告警事件的真/假标注信息;在预设时间窗口内,搜寻所有异常信号下的相关指标,获得相关指标集;从所述相关指标集中筛选出与当前调用链相关程度最大的相关指标作为高相关指标;确定所述高相关指标对应的历史告警事件的标注类型,以及确定所述高相关指标在对应历史日志数据中的分布规律;基于所述标注类型和所述分
布规律对比当前告警事件,以判断当前告警事件的真/假性质,并基于判断结果执行对应的处理流程。
8.在本技术实施例中,所述从所述相关指标集中筛选出与当前调用链相关程度最大的相关指标作为高相关指标,包括:分别计算所述历史日志数据中历史告警事件与相关指标集中各相关指标的皮尔逊相关系数;对比各相关指标的皮尔逊相关系系数数值,筛选出数值最大的皮尔逊相关系数对应的相关指标作为高相关指标。
9.在本技术实施例中,所述确定所述高相关指标在对应历史日志数据中的分布规律,包括:记录历史告警事件对应的高相关指标在对应预设时间窗口下的异常次数作为所述高相关指标在对应历史日志数据中的分布规律。
10.在本技术实施例中,所述基于所述标注类型和所述分布规律对比当前告警事件,以判断当前告警事件的真/假性质,包括:获取当前告警事件在相同大小时间窗口下的异常次数,并计算与所述高相关指标在对应历史日志数据中的分布规律之间的相似度;其中,相似度计算规则为皮尔逊相关系数算法、cosine相似度算法、spearman秩相关系数算法、tanimoto系数算法和对数似然相似度算法中的任一种;若确定识别到与当前告警事件之间的相似度大于预设相似度阈值的历史告警事件,识别该历史告警事件的真/假标注信息,基于该真/假标注信息确定当前告警事件的真/假性质,当前告警事件与相似度大于预设相似度阈值的历史告警事件的真/假性质相同。
11.在本技术实施例中,所述基于判断结果执行对应的处理流程,包括:若当前告警事件的性质为真告警事件,则进行当前告警事件推送;若当前告警事件的性质为假告警事件,则舍弃当前告警事件。
12.在本技术实施例中,若当前告警事件的执行规则为收敛规则,所述基于当前告警事件的执行规则执行当前告警事件处理,包括:基于既往相同告警事件处理信息,抽取当前调用链的高相关指标;基于所述高相关指标在预设时间窗口内进行异常检测,统计异常次数;基于所述异常次数计算当前告警事件与既往相同告警事件之间的相似度;对比所述相似度与预设相似度阈值,基于对比结果确定当前告警事件的真/假性质,并基于判断结果执行对应的处理流程。
13.在本技术实施例中,所述异常检测的方法为3σ原则法或箱线图法。
14.在本技术实施例中,所述对比所述相似度与预设相似度阈值,基于对比结果确定当前告警事件的真/假性质,包括:若当前告警事件与既往相同告警事件之间的相似度大于预设相似度阈值且既往相同告警事件为真告警事件,判定当前告警事件为真告警事件;若当前告警事件与既往相同告警事件之间的相似度大于预设相似度阈值且既往相同告警事件为假告警事件,判定当前告警事件为假告警事件;若当前告警事件与既往相同告警事件之间的相似度小于预设相似度阈值,判定当前告警事件为新发告警事件。
15.在本技术实施例中,所述基于判断结果执行对应的处理流程,包括:若当前告警事件为真告警事件,则进行当前告警事件推送;若当前告警事件为假告警事件,则舍弃当前告警事件;若当前告警事件为新发告警事件,则进行当前告警事件推送,并在当前告警事件处理完成后,将当前告警事件的处理信息记录到预设告警事件库中。
16.在本技术实施例中,所述方法还包括:进行真告警事件推送时,基于真告警事件对应的历史告警事件的处理流程或既往相同告警事件留存的处理流程,进行真告警事件的对
应处理流程推送。
17.在本技术实施例中,所述基于处理结果进行预设告警事件库更新,包括:更新当前告警事件的事件信息和对应的处理流程到预设告警事件库中;其中,所述事件信息包括:真/假性质、高关联指标、高关联指标在预设时间窗口内的异常次数和根因信息。
18.本技术第二方面提供一种告警收敛系统,所述系统包括:采集单元,用于响应于告警发生信号,获取当前告警信息,并基于所述告警信息确定当前告警的当前调用链;处理单元,用于在预设告警事件库中,判断当前调用链是否存在既往相同告警事件,并基于判断结果确定当前告警事件的执行规则;执行单元,用于基于当前告警事件的执行规则执行当前告警事件处理,并基于处理结果进行预设告警事件库更新。
19.本技术第三方面提供一种计算机可读储存介质,该机器可读存储介质上存储有指令,该指令在被处理器执行时使得所述处理器被配置成执行上述的告警收敛方法。
20.本技术第四方面提供一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现上述的告警收敛方法。
21.通过上述技术方案,本发明提出的告警收敛方法通过分析调用链信息,关联全局信息,关联出现异常事件的上下文并进行真假告警的判定,提高告警准确率。且在告警收敛的同时,不断更新告警事件库,不断学习新的告警事件,从而使告警收敛策略得到进化。本发明方案还在历史先验经验的基础上,使用机器学习的方法,引入网络拓扑结构中的上下文信息,将告警信息的判断依据多样化,提高告警事件准确性。
22.本技术实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
23.附图是用来提供对本技术实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本技术实施例,但并不构成对本技术实施例的限制。在附图中:
24.图1示意性示出了根据本技术实施例的告警收敛方法的步骤流程示意图;
25.图2示意性示出了根据本技术实施例的告警收敛方法的实施流程图;
26.图3示意性示出了根据本技术实施例的告警收敛系统的系统结构图;
27.图4示意性示出了根据本技术实施例的计算机设备的内部结构图。
具体实施方式
28.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解的是,此处所描述的具体实施方式仅用于说明和解释本技术实施例,并不用于限制本技术实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
29.需要说明,若本技术实施例中有涉及方向性指示(诸如上、下、左、右、前、后
……
),则该方向性指示仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
30.另外,若本技术实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等
的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本技术要求的保护范围之内。
31.系统告警是系统运维过程中时常会出现的情况,只要满足告警规则,系统运行过程中会收到各式各样的告警信息。这些告警信息产出自系统控制中的各个环节,虽然告警信息是系统运维过程中保证系统稳定运行必不可少的东西,但常理可知,针对不同环节控制,整个系统运行中存在很多控制链,存在于控制链上的所有环节具有很强的关联性,当一个部位存在故障时,因为后续环节无法正常获得在前下发的指令,也可能联动产出很多告警信息。可见,即使是系统中仅存在一处故障,也极有可能产出大量的告警信息,这些大量的告警信息不仅会给短信网关造成巨大压力,还会增大sre的故障监管压力,致使其忽略核心根因告警信息。
32.进一步的,这种同时产出大量告警信息的情况,不仅会对用户进行核心根因告警信息分辨造成困扰,也会极大影响用户进行故障原因分析和追踪,用户在接受到告警信息后,往往需要花费大量的时间进行故障排查,极大影响生产效率。为了解决这种爆发大规模告警信息的问题,告警收敛技术得到发展,告警收敛是指对告警信息进行分析、合并和丢弃,以此来降低告警信息的规模。即识别出无用告警信息,只保留有价值的告警信息,以此极大缩减告警信息的数量,同时减缓对短信网关和sre故障监管的压力。
33.目前普遍的告警收敛方法主要是把同类型的告警进行压缩,在一定周期内只发送有限数量的告警到用户端,以此减少告警重复发送的情况,提高告警效率,降低告警疲劳。当然,这里所说的同类型告警指的是满足一定条件的告警,这个条件是可配置的,可以是逻辑运算单元,可以是告警内容,也可以是整个告警任务。进行告警收敛配置时,主要分为收敛方式、收敛策略、未命中收敛三部分。其中收敛方式解决的是上面所说的满足一定条件的告警的条件,即配置条件将什么样的告警视为同一类告警;收敛策略解决的是上面所说的在一定周期内只发送有限数据的告警,即同类型告警如何发送;未命中收敛解决的是收敛方式中归类告警存在盲区时,如何处理进入收敛盲区的告警。
34.进一步说明,收敛方式主要存在条件收敛、内容收敛和全量收敛几种方式。其中,条件收敛即配置一系列条件组成逻辑运算单元,断言是否满足收敛条件,配置项有字段、条件、阈值、逻辑运算单元等。基于这些预设的收敛条件,判断实时告警信息是否满足这些条件,基于该预设条件识别有价值告警信息和需要收敛的告警信息。内容收敛即相同的告警内容收敛到一起,这种方式直接针对重复告警信息的收敛,但是,这实际应用过程中,极少会出现告警信息完全相同的情况,也容易出现将告警内容不变,但实质告警顺序不同的告警事件误认为相同告警事件而被收敛。所以,这种基于内容进行收敛的方法存在极强的局限性。全量收敛只要发送到该任务的告警都被认为是同一类告警进行收敛,无论他们的结构是否一致、内容是否一致。一般,建议不要使用该收敛方式,可能导致重要告警被误收敛。
35.收敛策略主要就是一定周期内只发送有限数量的告警,例如常见的周期收敛、延迟收敛、周期次数收敛、次数周期收敛、次数收敛。周期收敛只在配置的周期内只发送一条告警,且是在周期开始的时候。在周期开始时发送告警不用担心收敛不满足策略导致告警
发送不出来,是一种非常简单有效的收敛策略。其他收敛策略与周期收敛相似,只是在告警推送时间节点和推送数量上存在一定的区别。
36.最后,未命中收敛配置的是当告警没有命中收敛条件时,如何处理这些没有命中收敛的告警。
37.通过对现有告警收敛方案的分析,可以总结出现有告警收敛方法存在一些问题,即:
38.1)现有方法的告警收敛策略通常关注当前告警信息的告警内容、关键字段、发生次数,针对当前告警进行处理,没有考虑到系统服务的上下关联及其依赖,容易导致大量的误告警、冗余告警。
39.2)当前告警收敛策略依赖系统运维人员对系统运行、业务流程、服务调用熟悉,在这些经验的基础上配置收敛策略,尤其是在系统迭代以后,告警收敛策略往往会出现失效的情况,甚至时告警风暴。
40.3)当前告警收敛策略一般是运维人员对历史告警事件的简单总结,例如条件收敛、内容收敛、周期次数收敛等,通过对单一日志或者单一指标的检测推送告警,往往会增大告警规模。
41.针对现有告警方法普遍存在的判断条件单一、灵活性差、误告警信息多的问题,本发明方案提出了一种新的告警收敛方法。本发明提出的告警收敛方法通过分析调用链信息,关联全局信息,关联出现异常事件的上下文并进行真假告警的判定,提高告警准确率。且在告警收敛的同时,不断更新告警事件库,不断学习新的告警事件,从而使告警收敛策略得到进化。本发明方案还在历史先验经验的基础上,使用机器学习的方法,引入网络拓扑结构中的上下文信息,将告警信息的判断依据多样化,提高告警事件准确性。
42.图1是本发明一种实施方式提供的告警收敛方法的方法流程图。如图1所示,本发明实施方式提供一种告警收敛方法,所述方法包括:
43.步骤s10:响应于告警发生信号,获取当前告警信息,并基于所述告警信息确定当前告警事件所处调用链。
44.具体的,上述已知,在系统控制中,可控制环节可能存在各种各样的相互影响关系,所以到某一个环节出现故障总而产出告警信息时,其可能也会影响其他环节一并生成告警信息。本发明方案的目的便在于去除那些被附带产生的告警信息,找到产生故障和告警信息的根本环节,实现根因定位。建立在此前提下,当产出告警信息时,不能仅简单地将产出该告警信息的部位定位为根因部位,需要找到该部位所处调用链,基于互相影响关系,当前告警信息的根本原因可能出现在该调用链上的所有可能位置。
45.在系统完成一次业务调用的过程中,把服务之间的调用信息(时间、接口、层次、结果)打点到日志中,然后将所有的打点数据连接为一个树状链条就产生了一个调用链。所以,当系统产出告警事件时,采集单元响应于该告警发生信号,获取当前告警信息。该告警信息包括了告警部位和告警内容,可以基于该告警部位和对应的告警内容确定当前告警信息是在执行哪一条执行链产出的告警信号,基于对应的执行链和告警部位,便可以提取到记录的调用链信息。进行调用链定位时,对应采集调用链的调用链调用接口、调用时间、调用顺序和响应状态。
46.具体的,调用链中存在几个核心概念,即trace、span和annotation。其中,trace是
指一次请求调用的链路过程,trace id是指这次请求调用的id。在一次请求中,会在网络的最开始生成一个全局唯一的用于标识此次请求的trace id,这个trace id在这次请求调用过程中无论经过多少个节点都会保持不变,并且在随着每一层的调用不停的传递。最终,可以通过trace id将这一次用户请求在系统中的路径全部串起来。本发明方案正是基于该trace id进行整个调用链提取,即基于当前告警节点的trace id,进行前后调用数据串联,实现整个调用链确定。
47.步骤s20:在预设告警事件库中,判断该所处调用链是否存在既往相同告警事件,并基于判断结果确定当前告警事件的执行规则。
48.具体的,在系统运行过程中,经常会出现相同的故障类型,那这种相同的故障类型,对应产出的告警信息必定也存在极大的相似性。每一次告警事件处理,会留存对应的时间处理档案信息,若能够在后续每一次告警事件处理中,直接找到以这些在先告警事件相同的告警事件,便可以直接基于既往处理流程直接引导用户进行故障处理,也可以直接基于既往告警事件的推送执行方案直接找到当前告警事件的根因情况。通过这种告警事件处理方案的直接置换,可以极大减少数据的处理时间,提高告警事件收敛效率。
49.基于此,本发明方案预设有告警事件库,该告警事件库中留存有大量的历史告警事件信息,包括告警事件真/假性质、告警事件根因、告警事件处理方案等,这些留存信息可以在后续找到相同告警时间时,直接进行调用,套用之间的处理方案直接执行当前告警事件处理。其中,告警事件的真/假性质体现了告警事件的可推送的价值性,那些真正的故障环节的告警事件定义为真告警事件,被附带影响产出的告警事件或重复的告警事件定义为假告警事件。所以,在进行告警事件库构建时,需要记录各告警事件的真/假性质,以便于后续找到相同告警事件时,直接判断当前告警事件的真/假性质,从而决定当前告警事件的处理规则,是推送还是去除。
50.优选的,本发明方案判断当前告警事件是否在告警事件库中存在相同告警事件时,直接通过综合告警内容已经对应的告警产出环节,当存在所有数据匹配的历史告警事件,便可以将该历史告警事件确定为当前告警事件的既往相同告警事件。
51.进一步的,因为进行既往相同告警事件识别时,完全是告警事件宏观上的识别,在微观上,例如告警次数,告警顺序等依旧可能存在差别,这些微观上的差别,依旧可能是不同故障类型导致的。所以,只有保证在宏观和微观上均认定二者为相同告警事件时,才能完全基于既往相同告警事件的处理流程执行当前告警事件处理,反之,同样需要针对当前告警事件进行单独且具体的分析。
52.基于此,本发明方案提出以下几种实施例:
53.实施例一:
54.当前告警事件库中,并未识别到与当前告警事件相同的既往告警事件,即不存在可供参考的既往告警事件,则需要针对当前新的告警事件进行对应的处理,即冷启动规则。当前,该冷启动规则并不仅仅适用于新告警事件处理,对于新建设的系统或新用户进行系统控制是,因为告警事件库中还未存入任何历史数据,均可以使用该冷启动规则进行告警事件处理。
55.具体的,虽然不存在针对性构建的告警事件库信息,但控制流程的历史日志信息和现有日志信息依旧存在,这些留存的历史运行数据,保存有对应的告警事件产出规律。本
发明方案执行冷启动规则的原理便是,从这些历史运行数据中,提取出对应的告警事件日志信息,然后对历史日志信息中的调用链进行分析,基于历史日志信息的故障定位结果,对当前告警事件进行真/假性质定义,从而决定当前告警事件的处理规则。具体的,包括一下步骤:
56.步骤s2011:获取当前调用链历史日志数据,并提取历史告警信息的真/假标注信息。
57.具体的,在调用链历史日志数据中,存在各历史时间的真/假标注信息,这些标注信息可以是告警事件处理后自动记录的信息,也可以是相关人员基于自身经验进行标定的信息。
58.步骤s2012:在预设时间窗口内,搜寻所有异常信号下的相关指标,获得相关指标集。
59.具体的,上述已经提到,调用链中存在的三个核心概念,其中,span是指一个模块的调用过程,一般用span id来标识。在一次请求的过程中会调用不同的节点/模块/服务,每一次调用都会生成一个新的span id来记录。这样,就可以通过span id来定位当前请求在整个系统调用链中所处的位置,以及它的上下游节点分别是什么。本发明方案便基于该span id进行相关指标提取,这些相关指标便是影响告警事件的元素,这些指标发生改变时,整个调用链的日志均会随之而改变,但是每个相关指标的重要程度和影响程度均不相同,针对每一次告警事件的关联程度也不相同。当前步骤的目的是找到这些所有的相关指标,以便于后续从这些相关指标中,找到与当前告警事件关联度最高的相关指标。
60.步骤s2013:从所述相关指标集中筛选出与当前调用链相关程度最大的相关指标,作为高相关指标。
61.具体的,要找到历史调用链中与当前告警事件指标最为关联的相关指标,就需要找到与当前告警事件指标相似度最高的相关指标,该相似度最高的相关指标可能就是当前告警事件指标对应的相同的指标。则可以根据该高相关指标进行当前告警事件分析。历史每一个告警事件均对应有一个高相关指标,分别找到这些历史告警事件的高相关指标,便可以基于当前告警事件指标找到与当前告警事件相同的历史告警事件。基于此,需要计算当前告警事件与相关指标集中各相关指标之间的相似度。优选的,本发明方案通过计算历史告警事件与相关指标集中各相关指标的皮尔逊相关系数来判断二者的相似度,然后对比各相关指标的皮尔逊相关系数值,筛选出最大的皮尔逊相关系数值对应的相关指标,作为高相关指标。
62.步骤s2014:确定所述高相关指标对应历史告警事件的标注类型,以及确定所述高相关指标在对应历史日志数据中的分布规律,基于所述标注类型和所述分布规律对比当前告警事件,以判断当前告警事件的真/假性质,并基于判断结果执行对应的处理流程。
63.具体的,相同的故障类型,处理产出的告警信息相同外,对应日志数据中,相同时间窗口下的异常次数也具有极强的相似特征。简单来说,相同的故障类型,在相同时间窗口下,产生的异常次数必定处在某个区间内。本发明方案正是基于该特征进行当前告警事件与对应历史日志信息中的告警信息是否为相同告警时间。基于此,需要记录历史告警事件对应的高相关指标在对应预设时间窗口下的异常次数,作为所述高相关指标在对应历史日志数据中的分布规律。然后获取当前告警事件在相同大小时间窗口下的异常次数,并计算
与所述高相关指标在对应历史日志数据中的分布规律之间的相似度;其中,相似度计算规则为皮尔逊相关系数算法、cosine相似度算法、spearman秩相关系数算法、tanimoto系数算法和对数似然相似度算法中的任意一种;识别到与当前告警事件之间的相似度大于预设相似度阈值的历史告警事件,并识别该历史告警事件的真/假标注信息,基于该标注信息确定当前告警事件的真/假性质,当前告警事件与相似度大于预设相似度阈值的历史告警事件的真/假性质相同。
64.进一步的,若当前告警事件为真告警事件时,则进行当前告警事件推送;若当前告警事件为假告警事件时,则舍弃当前告警事件。当然,进行当前告警事件推送时,可以基于日志信息中或者留存的历史处理信息进行相关操作步骤,因为冷启动规则下,这些执行信息未针对性的进行整理,但依旧可以推送相关的历史信息到用户端,同样可以极大减少用户的故障排查时间。
65.实施例二:
66.当前告警事件库中,识别到存在与当前告警事件相同的既往告警事件。这种应用场景下,方案的执行步骤将变得极为简练,只需要确定当前告警事件与既往相同告警时间无论是在宏观上还是在微观上均具有极强的相似度,便可以直接认定当前告警时间与既往告警事件就是等同告警事件,则直接基于既往告警事件进行对应告警收敛便可。具体的,包括一下步骤:
67.步骤s2021:基于既往相同告警事件处理信息,抽取当前调用链的高相关指标。
68.具体的,在冷启动阶段,需要找到每一个调用链的高相关指标,后续进行存档时,同样需要将找到的高相关指标进行留档。基于此,每一个既往告警事件均绑定有一个对应调用链的高相关指标。当找到既往相同告警事件后,便可以直接调用该数据,减少高相关指标寻找步骤。
69.步骤s2022:基于所述高相关指标在预设时间窗口内进行异常检测,统计异常次数。
70.具体的,上述已知,在相同时间窗口下,相同告警事件对应的异常次数应当具有很强的相似性,既往相同告警事件的异常次数已经留存有记录。则需要提取当前告警事件在相同时间窗口下的异常次数。优选的,本发明方案通过3σ原则法或箱线图法进行异常检测,并统计异常检测过程中的异常次数。
71.其中,3σ原则又称为拉依达准则,它是先假设一组检测数据只含有随机误差,对其进行计算处理得到标准偏差,按一定概率确定一个区间,认为凡超过这个区间的误差,就不属于随机误差而是粗大误差,含有该误差的数据应予以剔除。箱线图也称箱须图、箱形图、盒图,用于反映一组或多组连续型定量数据分布的中心位置和散布范围。箱形图包含数学统计量,不仅能够分析不同类别数据各层次水平差异,还能揭示数据间离散程度、异常值、分布差异等等。因为3σ原则法或箱线图法均是常见的异常检测方案,次数便不再赘述。
72.步骤s2023:基于所述异常次数计算当前告警事件与所述既往相同告警事件之间的相似度。
73.具体的,此处当前告警事件与所述既往相同告警事件之间的相似度的计算规则与上诉步骤s2014中的相似度计算规则相似,均是基于皮尔逊相关系数算法、cosine相似度算法、spearman秩相关系数算法、tanimoto系数算法和对数似然相似度算法等执行相似度计
算。将当前告警事件与历史告警事件各相关指标的异常频次分别构成相同维度的向量,计算两个向量的相似度。
74.步骤s2024:对比所述相似度与预设相似度阈值之前的关系,并基于对比结果确定当前告警事件的真/假性质,并基于判断结果执行对应的处理流程。
75.具体的,若当前告警事件与所述既往相同告警事件之间的相似度大于预设相似度阈值,且所述既往相同告警事件为真告警事件时,判定当前告警事件为真告警事件;若当前告警事件与所述既往相同告警事件之间的相似度大于预设相似度阈值,且所述既往相同告警事件为假告警事件时,判定当前告警事件为假告警事件;若当前告警事件与所述既往相同告警事件之间的相似度小于预设相似度阈值时,判定当前告警事件为新发告警事件。
76.进一步的,若当前告警事件为真告警事件时,则进行当前告警事件推送;若当前告警事件为假告警事件时,则舍弃当前告警事件;若当前告警事件为新发告警事件,则进行当前告警事件推送,并在当前告警事件处理完成后,将当前告警事件的处理信息记录到所述预设告警事件库中。
77.步骤s30:基于所述当前告警事件的执行规则执行当前告警事件处理,并基于处理结果进行所述告警事件库更新。
78.具体的,进行真告警事件推送时,基于真告警事件对饮的历史告警事件或既往相同告警事件留存的处理流程进行对应处理流程推送。更新当前告警事件的事件信息和对应的处理流程到所述告警事件库中;其中,所述事件信息包括:真/假性质、高关联指标、高关联指标在预设时间窗口内的异常次数和根因信息。
79.在本发明实施例中,使用告警事件在调用链上下关联节点上的指标及其异常频次来表征当前告警事件的特征,对当前告警事件进行画像,更加灵活、全局地表征了告警事件的特点。在告警收敛的过程中不断积累告警事件,更新告警事件,并以此为基础使得告警策略进化,尽快适应当前系统,降低误告警的发生几率。通过告警事件的相似程度、历史告警事件根因信息与处置流程的记录,实现了告警通知同时提示历史相似事件发生原因与处置办法,为故障的解决大大节省时间,提高运维效率。
80.图2为一个实施例中告警收敛方法的实施流程图。应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
81.在一个实施例中,如图3所示,提供了一种告警收敛系统,所述系统包括:采集单元,用于响应于告警发生信号,获取当前告警信息,并基于所述告警信息确定当前告警的当前调用链;处理单元,用于在预设告警事件库中,判断当前调用链是否存在既往相同告警事件,并基于判断结果确定当前告警事件的执行规则;执行单元,用于基于当前告警事件的执行规则执行当前告警事件处理,并基于处理结果进行预设告警事件库更新。
82.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram),存储器包括至少一个存
储芯片。
83.本技术实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现上述告警收敛方法。
84.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器a01、网络接口a02、存储器(图中未示出)和数据库(图中未示出)。其中,该计算机设备的处理器a01用于提供计算和控制能力。该计算机设备的存储器包括内存储器a03和非易失性存储介质a04。该非易失性存储介质a04存储有操作系统b01、计算机程序b02和数据库(图中未示出)。该内存储器a03为非易失性存储介质a04中的操作系统b01和计算机程序b02的运行提供环境。该计算机设备的网络接口a02用于与外部的终端通过网络连接通信。该计算机程序b02被处理器a01执行时以实现一种告警收敛方法。
85.本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
86.在一个实施例中,本技术提供的告警收敛系统可以实现为一种计算机程序的形式,计算机程序可在如图4所示的计算机设备上运行。计算机设备的存储器中可存储组成该告警收敛系统的各个程序模块,各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本技术各个实施例的告警收敛方法中的步骤。
87.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
88.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
89.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
90.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
91.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
92.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
93.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
94.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
95.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1