一种异常事件检测方法、装置、电子设备及存储介质与流程

文档序号:33462838发布日期:2023-03-15 05:00阅读:42来源:国知局
一种异常事件检测方法、装置、电子设备及存储介质与流程

1.本技术涉及监控运维技术领域,具体涉及一种异常事件检测方法、装置、电子设备及存储介质。


背景技术:

2.随着企业数字化转型的推进,数字化it设施已经成为企业的核心竞争力。为了监控it(information technology,信息技术)设施的稳定性,企业普遍采用多个监控平台来负责监控不同方面的事务,例如sls(log service,日志服务)平台做日志监控,arms(application real-time monitoring service,应用实时监控服务)平台做应用链路监控,云监控做云资源监控等。
3.然而,多个监控平台的存在使得异常事件的判断割裂,每个监控平台发出的告警可能只是局部异常,但并不影响业务连续性,而运维人员却需要花费精力处理这些大量的无效异常事件和告警,导致异常事件检测准确率低,并且在it设施大面积故障时,多个监控平台瞬间产生大量告警,容易造成告警风暴问题。


技术实现要素:

4.本技术的目的是针对上述现有技术的不足提出的一种异常事件检测方法、装置、电子设备及存储介质,该目的是通过以下技术方案实现的。
5.本技术的第一方面提出了一种异常事件检测方法,所述方法包括:
6.确定与当前接收的源告警匹配的目标子规则所属的主规则,所述主规则包括至少一条子规则和时间窗口,且每条子规则分别关联一个监控平台;
7.在所述主规则对应的异常事件未触发情况下,根据所述时间窗口和所述源告警的时间戳获取与所述主规则中任一子规则匹配的待处理源告警,所述待处理源告警至少包含当前接收的源告警;
8.基于所述待处理源告警判定是否触发所述异常事件。
9.在本技术的一些实施例中,所述根据所述时间窗口和所述源告警的时间戳获取与所述主规则中任一子规则匹配的待处理源告警,包括:
10.根据所述时间窗口和所述源告警的时间戳确定查询时间范围;获取时间戳位于所述查询时间范围内且与所主规则中任一子规则匹配的待处理源告警。
11.在本技术的一些实施例中,所述获取时间戳位于所述查询时间范围内且与所述主规则中任一子规则匹配的待处理源告警,包括:
12.针对所述主规则中每一子规则,在所述子规则对应的源告警列表中获取时间戳位于所述查询时间范围内的源告警;所述源告警列表中记录有与所述子规则匹配的源告警;将为每一子规则获取的源告警确定为待处理源告警。
13.在本技术的一些实施例中,所述根据所述时间窗口和所述源告警的时间戳确定查询时间范围,包括:
14.将所述源告警的时间戳作为所述查询时间范围的结束时间点;将所述结束时间点减去所述时间窗口的长度得到的时间点作为所述查询时间范围的起始时间点。
15.在本技术的一些实施例中,所述方法还包括与当前接收的源告警匹配的目标子规则确定过程:
16.确定与发送所述源告警的监控平台关联的各条子规则;在所述监控平台关联的各条子规则中确定与所述源告警匹配的目标子规则。
17.在本技术的一些实施例中,所述在所述监控平台关联的各条子规则中确定与所述源告警匹配的目标子规则,包括:
18.提取所述源告警携带的告警内容;在所述监控平台关联的各条子规则包含的匹配条件中,获取所述告警内容符合的目标匹配条件;将所述目标匹配条件所属的子规则确定为目标子规则。
19.在本技术的一些实施例中,所述主规则还包括所述至少一条子规则中每一子规则对应的匹配数量条件;所述基于所述待处理源告警判定是否触发所述异常事件,包括:
20.针对所述主规则中每一子规则,根据所述待处理源告警统计与所述子规则匹配的源告警数,并根据所述源告警数符合所述子规则对应的匹配数量条件,确定命中所述子规则;根据命中的子规则判定是否触发所述异常事件。
21.在本技术的一些实施例中,所述主规则还包括所述至少一条子规则之间的命中关系;所述根据命中的子规则判定是否触发所述异常事件,包括:
22.根据命中的子规则符合所述命中关系的要求,确定触发所述主规则的异常事件;根据命中的子规则不符合所述命中关系的要求,确定不触发异常事件。
23.在本技术的一些实施例中,在根据所述时间窗口和所述源告警的时间戳获取与所述主规则中任一子规则匹配的待处理源告警之前,所述方法还包括:
24.在所述主规则对应的异常事件未触发情况下,将所述源告警添加到与所述目标子规则对应的源告警列表中。
25.在本技术的一些实施例中,所述方法还包括:
26.在所述主规则对应的异常事件已触发情况下,将所述源告警携带的告警内容添加到所述异常事件中。
27.本技术的第二方面提出了一种异常事件检测装置,所述装置包括:
28.主规则确定模块,用于确定与当前接收的源告警匹配的目标子规则所属的主规则,所述主规则包括至少一条子规则和时间窗口,且每条子规则分别关联一个监控平台;
29.告警读取模块,用于在所述主规则对应的异常事件未触发情况下,根据所述时间窗口和所述源告警的时间戳获取与所述主规则中任一子规则匹配的待处理源告警,所述待处理源告警至少包含当前接收的源告警;
30.事件检测模块,用于基于所述待处理源告警判定是否触发所述异常事件。
31.本技术的第三方面提出了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序以实现如上述第一方面所述方法的步骤。
32.本技术的第四方面提出了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行以实现如上述第一方面所述方法的步骤。
33.基于上述第一方面和第二方面所述的异常事件检测方法及装置,本技术至少具有如下有益效果或优点:
34.由于本方案在确定与当前接收的源告警匹配的目标子规则所属的主规则之后,如果主规则的异常事件还没有触发,便触发后面的异常事件检测,因此通过将源源不断的源告警作为异常事件检测的触发源,可以做到实时的异常事件检测,保证异常事件检测的时效性。在异常事件检测过程中,通过主规则的时间窗口和当前接收的源告警的时间戳,以获取一段时间内与主规则中各个子规则匹配的待处理源告警,由于每个子规则关联一个监控平台,因此获取的这些待处理源告警来自于不同的监控平台,从而利用这些待处理源告警进行异常事件的检测,可以将这一段时间内多个监控平台产生的待处理源告警综合收敛为一条异常事件,既提高了异常事件检测的准确性,也降低了告警风暴。
附图说明
35.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
36.图1为本技术根据一示例性实施例示出的一种异常事件检测方法的实施例流程图;
37.图2为本技术根据图1所示实施例示出的一种主规则包含的内容示意图;
38.图3为本技术根据图1所示实施例示出的一种单监控平台源告警处理效果示意图;
39.图4为本技术根据图1所示实施例示出的一种多监控平台源告警处理效果示意图;
40.图5为本技术根据图1所示实施例示出的一种异常事件整体检测流程示意图;
41.图6为本技术根据一示例性实施例示出的一种异常事件检测装置的结构示意图;
42.图7为本技术根据一示例性实施例示出的一种电子设备的硬件结构示意图;
43.图8为本技术根据一示例性实施例示出的一种存储介质的结构示意图。
具体实施方式
44.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
45.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
46.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
47.目前,由于越来越多的企业采用的是多监控平台来进行多方面事务监控,而多监
控平台的存在使得异常事件的判断割裂,每个监控平台发出的告警可能只是局部异常,需要运维人员处理大量的无效异常事件和告警,发明人调研大量企业发现,90%以上企业存在多监控平台情况,运维人员每日处理50条以上告警的占比68%。
48.为了解决上述技术问题,发明人经研究发现,如果能将一段时间内的多监控平台产生的大量告警进行汇聚后触发异常事件,既能提高异常事件检测的准确性,也能降低告警风暴。举例来说,某一时刻zabbix监控平台检测到主机异常,同时一段时间内arms监控平台检测到部署在该主机上的应用调用异常,那么说明该应用很大概率出现了异常。
49.基于此,本技术提出一种异常事件检测方法,通过预先配置检测规则来进行异常事件的检测,一个主规则对应一个异常事件,主规则包含至少一条子规则和检测的时间窗口,且每条子规则分别关联一个监控平台,在确定与当前接收的源告警匹配的目标子规则所属的主规则之后,如果主规则的异常事件还没有触发,便触发异常事件的检测,以做到实时的异常事件检测,保证异常事件检测的时效性。
50.在进行异常事件检测过程中,根据主规则的时间窗口和当前接收的源告警的时间戳,以获取一段时间内与主规则中各个子规则匹配的待处理源告警,由于每条子规则分别关联一个监控平台,因此获取的这些待处理源告警来自于不同的监控平台,并利用这些待处理源告警进行异常事件检测,以将这一段时间内多个监控平台产生的待处理源告警综合收敛为一条异常事件,这样既提高了异常事件检测的准确性,也降低了告警风暴。
51.为了使本领域技术人员更好的理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。
52.图1为本技术根据一示例性实施例示出的一种异常事件检测方法的实施例流程图,包括如下步骤:
53.步骤101:确定与当前接收的源告警匹配的目标子规则所属的主规则,主规则包括至少一条子规则和时间窗口,且每条子规则分别关联一个监控平台。
54.在本实施例中,会源源不断接收到来自不同监控平台发送的源告警,每接收到一个源告警,通过确定与源告警匹配的目标子规则所属的主规则,便触发后面的异常事件检测,保证了异常事件检测的时效性。
55.在执行步骤101之前,需要预先配置异常事件的主规则以及检测的时间窗口,并在主规则中配置与监控平台关联的子规则、各条子规则之间的命中关系、以及每条子规则对应的匹配数量条件。
56.具体地,时间窗口规定了每次进行异常事件检测需要获取该时间窗口范围内的源告警进行检测。每条子规则分别关联一个监控平台,且每条子规则中定义有针对关联监控平台产生的源告警的匹配条件。示意性的,源告警的匹配条件可以使用简单的正则匹配,也可以使用复杂的匹配式。
57.可选的,命中关系包括由“与”和/或“或”组成的关系条件。“与”表示符号为&&,“或”表示符号为‖,例如命中关系表达式为:子规则1‖子规则2&&子规则3,表示子规则1命中或者子规则2命中并且子规则命中。
58.举例来说,参见图2所示的一个主规则的内容示意图,该主规则包括四条子规则、检测的时间窗口是5分钟、以及四条子规则之间的命中关系。其中,子规则1定义的是监控平台1产生的源告警的匹配条件,以及对应的匹配数量条件;子规则2定义的是监控平台2产生
value为源告警列表,该数据结构支持按照子规则id查询源告警列表,该源告警列表可以是一个存储有源告警的有序列表,便于按照时间范围查询。
72.需要说明的是,为了避免源告警列表太大造成查询速度慢的问题,可以定时对每一子规则对应的源告警列表进行清理,即将源告警列表中时间戳最早的且已经超出当前时间窗口范围的源告警清理掉。
73.在一可选实施例中,针对根据时间窗口和源告警的时间戳获取与主规则中任一子规则匹配的待处理源告警的过程,首先根据时间窗口和源告警的时间戳确定查询时间范围,然后获取时间戳位于该查询时间范围内且与主规则中任一子规则匹配的待处理源告警。
74.具体地,针对查询时间范围的确定过程,通过将源告警的时间戳作为查询时间范围的结束时间点,并将结束时间点减去时间窗口的长度得到的时间点作为查询时间范围的起始时间点。
75.进一步地,针对获取时间戳位于该查询时间范围内且与主规则中任一子规则匹配的待处理源告警的过程,针对主规则中每一子规则,在子规则对应的源告警列表中获取时间戳位于该查询时间范围内的源告警,然后将为每一子规则获取的源告警确定为待处理源告警。
76.其中,源告警列表中记录有与子规则匹配的源告警。由此可见,待处理源告警至少会包含当前接收的源告警,并且由于每一子规则关联一个监控平台,如果在该查询时间范围内每个监控平台均有源告警产生,那么待处理源告警会包含来自多个监控平台的源告警。
77.步骤103:基于待处理源告警判定是否触发异常事件。
78.基于上述描述,主规则还包括其中的每一子规则对应的匹配数量条件,该匹配数量条件定义了命中子规则需要满足的最少源告警数量。
79.在一可选实施方式中,针对主规则中每一子规则,根据待处理源告警统计与该子规则匹配的源告警数,并根据该源告警数符合该子规则对应的匹配数量条件,确定命中该子规则,然后根据命中的子规则判定是否触发对应的异常事件。
80.进一步地,主规则还包括至少一条子规则之间的命中关系。
81.针对根据命中的子规则判定是否触发对应的异常事件的过程,判断命中的子规则是否符合该命中关系的要求,如果符合,则确定触发主规则的异常事件,如果不符合,则确定不触发异常事件。
82.示意性的,在触发异常事件时,可以触发包含命中的子规则对应的匹配条件的异常事件,由于匹配条件定义了告警内容的限制条件,因此运维人员根据异常事件可以了解到各个监控平台的告警情况。
83.针对上述步骤101至步骤103的过程,在一示例性场景中,参见图3所示,一个主规则里只包含一条子规则和时间窗口x分钟,该子规则关联的是监控平台a,且定义的匹配数量条件是y条,如果在x分钟内至少命中y条来自监控平台a的源告警,即触发主规则对应的异常事件。这样即实现了单个监控平台的源告警的异常事件检测。
84.在又一示例性场景中,参见图4所示,一个主规则里包含两条子规则和时间窗口x分钟,两条子规则分别关联的是监控平台a和监控平台b,且分别定义的匹配数量条件是y条
和z条,并且两条子规则的命中关系是“&&”的关系,即如果在x分钟内至少命中y条来自监控平台a的源告警,且至少命中z条来自监控平台b的源告警,则触发主规则对应的异常事件。这样即实现了来自两个监控平台的源告警的异常事件检测。
85.至此,完成上述图1所示的异常事件检测流程,由于本方案在确定与当前接收的源告警匹配的目标子规则所属的主规则之后,如果主规则的异常事件还没有触发,便触发后面的异常事件检测,因此通过将源源不断的源告警作为异常事件检测的触发源,可以做到实时的异常事件检测,保证异常事件检测的时效性。在异常事件检测过程中,通过主规则的时间窗口和当前接收的源告警的时间戳,以获取一段时间内与主规则中各个子规则匹配的待处理源告警,由于每个子规则关联一个监控平台,因此获取的这些待处理源告警来自于不同的监控平台,从而利用这些待处理源告警进行异常事件的检测,可以将这一段时间内多个监控平台产生的待处理源告警综合收敛为一条异常事件,既提高了异常事件检测的准确性,也降低了告警风暴。
86.基于上述图1所示实施例的基础上,参见图5所示的异常事件整体检测流程,整个流程采用实时的类流式计算检测,包含的几个计算模块的处理流程如下:
87.首先,子规则检测模块负责对所有监控平台的源告警进行匹配计算,即进行数据解析,得到告警内容和来源的监控平台等信息,再依次匹配关联了该监控平台的所有子规则,如果源告警与某一子规则匹配,则进入告警收敛模块;
88.然后,告警收敛模块负责源告警的收敛,即判断与源告警匹配的子规则所属主规则的异常事件是否已触发,若是,则将源告警中的告警内容添加到异常事件中,以将源告警收敛至已存在的事件,不再参与新的异常事件检测,若否,则进入告警缓存模块。
89.接着,告警缓存模块负责存储与子规则匹配的源告警列表,即按照匹配的子规则id将该源告警存入相应的源告警列表中,并进入主规则检测模块。
90.最后,主规则检测模块负责进行异常事件的检测计算。即查询与该源告警匹配的子规则所属主规则的时间窗口配置和所有子规则配置;确定一个源告警的时间戳往前推的一个时间范围,从告警缓存模块中,根据子规则id查询该时间范围内与各子规则匹配的待处理源告警;根据主规则中配置的命中关系和这些待处理源告警,计算是否命中整个主规则,若命中,则触发异常事件。
91.至此,完成图5所示的整体检测流程。
92.与前述异常事件检测方法的实施例相对应,本技术还提供了异常事件检测装置的实施例。
93.图6为本技术根据一示例性实施例示出的一种异常事件检测装置的结构示意图,该装置用于执行上述任一实施例提供的异常事件检测方法,如图6所示,该异常事件检测装置包括:
94.主规则确定模块610,用于确定与当前接收的源告警匹配的目标子规则所属的主规则,所述主规则包括至少一条子规则和时间窗口,且每条子规则分别关联一个监控平台;
95.告警读取模块620,用于在所述主规则对应的异常事件未触发情况下,根据所述时间窗口和所述源告警的时间戳获取与所述主规则中任一子规则匹配的待处理源告警,所述待处理源告警至少包含当前接收的源告警;
96.事件检测模块630,用于基于所述待处理源告警判定是否触发所述异常事件。
97.上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
98.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本技术方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
99.本技术实施方式还提供一种与前述实施方式所提供的异常事件检测方法对应的电子设备,以执行上述异常事件检测方法。
100.图7为本技术根据一示例性实施例示出的一种电子设备的硬件结构图,该电子设备包括:通信接口601、处理器602、存储器603和总线604;其中,通信接口601、处理器602和存储器603通过总线604完成相互间的通信。处理器602通过读取并执行存储器603中与异常事件检测方法的控制逻辑对应的机器可执行指令,可执行上文描述的异常事件检测方法,该方法的具体内容参见上述实施例,此处不再累述。
101.本技术中提到的存储器603可以是任何电子、磁性、光学或其它物理存储装置,可以包含存储信息,如可执行指令、数据等等。具体地,存储器603可以是ram(random access memory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。通过至少一个通信接口601(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
102.总线604可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器603用于存储程序,所述处理器602在接收到执行指令后,执行所述程序。
103.处理器602可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器602中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器602可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。
104.本技术实施例提供的电子设备与本技术实施例提供的异常事件检测方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
105.本技术实施方式还提供一种与前述实施方式所提供的异常事件检测方法对应的计算机可读存储介质,请参考图8所示,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的异常事件检测方法。
106.需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
107.本技术的上述实施例提供的计算机可读存储介质与本技术实施例提供的异常事件检测方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
108.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求指出。
109.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
110.以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1