一种告警关系确定方法、设备、装置及存储介质与流程

文档序号:32606283发布日期:2022-12-20 17:10阅读:36来源:国知局
一种告警关系确定方法、设备、装置及存储介质与流程

1.本发明涉及数据处理技术领域,特别是涉及一种告警关系确定方法、设备、装置及存储介质。


背景技术:

2.基站等网络设备在工作过程中可能会发生故障,导致通信网络异常,从而影响网络通信质量。在出现故障后,网络设备一般会生成用于反映上述故障的告警,工作人员可以根据告警进行故障定位,从而排除故障。
3.由于网络设备在工作过程中生成的告警一般较多,若工作人员逐一分析告警进而进行故障定位,效率较低。又由于一个故障可能会导致其他故障出现,因此,可以认为由这些故障引起的告警之间存在告警关系。
4.例如,网络设备发生故障x1,触发生成告警m,故障x1可能会进一步导致网络设备出现故障x2,进而触发网络设备生成告警n。由于故障x2是由故障x1导致的,所以,可以认为告警m是告警n的根因告警,告警n是告警m的衍生告警,告警m与告警n之间存在告警关系。
5.所以,在进行故障定位时,若能够确定告警之间的告警关系,可以依据告警关系对告警进行分析,定位根因告警,从而对网络设备生成的告警进行压缩、过滤,提高故障定位的效率。
6.鉴于上述情况,需要提供一种告警关系确定方案,以确定告警之间的告警关系。


技术实现要素:

7.本发明实施例的目的在于提供一种告警关系确定方法、设备、装置及存储介质,以确定不同告警之间的告警关系。具体技术方案如下:
8.第一方面,本发明实施例提供了一种告警关系确定方法,所述方法包括:
9.获得各待分析告警的告警数量;
10.根据告警生成时间与告警生成设备,将待分析告警划分为告警组;
11.针对每一待分析告警,确定告警数量大于等于该待分析告警的告警数量的条件告警,并获得各条件告警与该待分析告警位于同一告警组的同组次数,根据所述同组次数,确定各条件告警与该待分析告警间存在的告警关系。
12.第二方面,本发明实施例提供了一种告警关系确定设备,包括存储器,收发机,处理器:
13.存储器,用于存储计算机程序;收发机,用于在所述处理器的控制下收发数据;处理器,用于读取所述存储器中的计算机程序并执行以下操作:
14.获得各待分析告警的告警数量;
15.根据告警生成时间与告警生成设备,将待分析告警划分为告警组;
16.针对每一待分析告警,确定告警数量大于等于该待分析告警的告警数量的条件告警,并获得各条件告警与该待分析告警位于同一告警组的同组次数,根据所述同组次数,确
定各条件告警与该待分析告警间存在的告警关系。
17.第三方面,本发明实施例提供了一种告警关系确定装置,所述装置包括:
18.数量确定模块,用于获得各待分析告警的告警数量;
19.告警组划分模块,用于根据告警生成时间与告警生成设备,将待分析告警划分为告警组;
20.关系确定模块,用于针对每一待分析告警,确定告警数量大于等于该待分析告警的告警数量的条件告警,并获得各条件告警与该待分析告警位于同一告警组的同组次数,根据所述同组次数,确定各条件告警与该待分析告警间存在的告警关系。
21.第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一所述的方法步骤。
22.第五方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面任一所述的方法步骤。
23.本发明实施例有益效果:
24.本发明实施例提供了一种告警关系确定方法,首先获得待分析告警的告警数量,并根据告警生成时间和告警生成设备将待分析告警划分为告警组。针对每一待分析告警,确定告警数量大于等于该待分析告警的告警数量的条件告警,并获得各条件告警与该待分析告警位于同一告警组的同组次数,根据所述同组次数,确定各条件告警与该待分析告警间存在的告警关系。
25.由以上可见,若一种故障是导致另一种故障的根因,则若设备发生了根因故障,那么在短时间内发生另一种衍生故障的可能性较高,因此设备会在短时间内分别生成表示上述两种故障的告警。所以若同一设备在相近的时间多次生成两种不同的告警,则可以认为上述两种告警之间存在告警关系的可能性较高。本发明实施例提供的方案,将告警按照告警生成时间与告警生成设备划分为告警组之后,同一告警组中的告警由同一设备生成,且生成的时间较为接近,若条件告警与待分析告警位于同一告警组的同组次数较高,则可以认为同一设备多次在相近的时间生成该条件告警与该待分析告警,因此可以认为该条件告警与该待分析告警之间存在告警关系。
26.并且,由于衍生故障是根因故障导致的,所以在大多数情况下,根因故障的发生次数大于衍生故障的发生次数,因此根因故障对应的根因告警的告警数量往往大于衍生故障对应的衍生告警的告警数量。由于本发明实施例中,条件告警的告警数量大于等于待分析告警的告警数量,因此可以大致确定存在告警关系的条件告警是待分析告警的根因告警。
附图说明
27.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
28.图1为本发明实施例提供的第一种告警关系确定方法的流程示意图;
29.图2为本发明实施例提供的第二种告警关系确定方法的流程示意图;
30.图3为本发明实施例提供的第三种告警关系确定方法的流程示意图;
31.图4为本发明实施例提供的第四种告警关系确定方法的流程示意图;
32.图5a为本发明实施例提供的第一种告警链表组的示意图;
33.图5b为本发明实施例提供的第二种告警链表组的示意图;
34.图5c为本发明实施例提供的第三种告警链表组的示意图;
35.图5d为本发明实施例提供的第四种告警链表组的示意图;
36.图5e为本发明实施例提供的第五种告警链表组的示意图;
37.图5f为本发明实施例提供的第六种告警链表组的示意图;
38.图5g为本发明实施例提供的第七种告警链表组的示意图;
39.图5h为本发明实施例提供的第八种告警链表组的示意图;
40.图5i为本发明实施例提供的第九种告警链表组的示意图;
41.图5j为本发明实施例提供的第十种告警链表组的示意图;
42.图6a为本发明实施例提供的第一种条件模式基的示意图;
43.图6b为本发明实施例提供的第二种条件模式基的示意图;
44.图6c为本发明实施例提供的第三种条件模式基的示意图;
45.图6d为本发明实施例提供的第四种条件模式基的示意图;
46.图6e为本发明实施例提供的第五种条件模式基的示意图;
47.图6f为本发明实施例提供的第六种条件模式基的示意图;
48.图7为本发明实施例提供的第五种告警关系确定方法的流程示意图;
49.图8为本发明实施例提供的一种应用于基站告警的告警关系确定方法的流程示意图;
50.图9为本发明实施例提供的一种告警关系确定设备的结构示意图;
51.图10为本发明实施例提供的一种告警关系确定装置的结构示意图。
具体实施方式
52.本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
53.本发明实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
54.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本发明实施例所获得的所有其他实施例,都属于本发明保护的范围。
55.为了确定告警之间的告警关系,本发明实施例提供了一种告警关系确定方法、设备、装置及存储介质。
56.本发明实施例提供了一种告警关系确定方法,上述方法包括:
57.获得各待分析告警的告警数量;
58.根据告警生成时间与告警生成设备,将待分析告警划分为告警组;
59.针对每一待分析告警,确定告警数量大于等于该待分析告警的告警数量的条件告警,并获得各条件告警与该待分析告警位于同一告警组的同组次数,根据上述同组次数,确
定各条件告警与该待分析告警间存在的告警关系。
60.由以上可见,若一种故障是导致另一种故障的根因,则若设备发生了根因故障,那么在短时间内发生另一种衍生故障的可能性较高,因此设备会在短时间内分别生成表示上述两种故障的告警。所以若同一设备在相近的时间多次生成两种不同的告警,则可以认为上述两种告警之间存在告警关系的可能性较高。本发明实施例提供的方案,将告警按照告警生成时间与告警生成设备划分为告警组之后,同一告警组中的告警由同一设备生成,且生成的时间较为接近,若条件告警与待分析告警位于同一告警组的同组次数较高,则可以认为同一设备多次在相近的时间生成该条件告警与该待分析告警,因此可以认为该条件告警与该待分析告警之间存在告警关系。
61.并且,由于衍生故障是根因故障导致的,所以在大多数情况下,根因故障的发生次数大于衍生故障的发生次数,因此根因故障对应的根因告警的告警数量往往大于衍生故障对应的衍生告警的告警数量。由于本发明实施例中,条件告警的告警数量大于等于待分析告警的告警数量,因此可以大致确定存在告警关系的条件告警是待分析告警的根因告警。
62.参见图1,为本发明实施例提供的第一种告警关系确定方法的流程示意图,上述方法包括以下步骤s101-s103。
63.s101:获得各待分析告警的告警数量。
64.具体的,可以获得各网络设备在预设时间段内生成的告警,作为待分析告警。其中,上述网络设备可以为基站、交换机等。
65.本发明的一个实施例中,可以获得表示待分析告警的告警信息,上述告警信息可以是设备日志中记录的,上述告警信息内存储有告警编号,不同告警对应的告警编号不同,可以根据上述告警编号区分不同的待分析告警,并统计各待分析告警的告警数量。
66.参见表1,为本发明实施例提供的第一种告警信息示例表。
67.表1
[0068][0069][0070]
其中,表1中所示的告警均为基站生成的告警,由表1可见,不同告警的告警编号与告警名称不同,表1的样例中的gnb字段表示告警对应的基站,其他字段分别表示告警对应的基站中的器件,具有相同的gnb字段的告警对应同一基站,具有相同的其他字段的告警对应同一器件。具体的,上述样例为一种举例,各告警的上述字段的取值不局限于上述样例。上述样例中的各个字段为现有技术告警信息中包含的字段在此不再对各字段的含义进行赘述。
[0071]
s102:根据告警生成时间与告警生成设备,将待分析告警划分为告警组。
[0072]
本发明的一个实施例中,可以将同一告警生成设备生成的、告警生成时间处于同一时间段内的待分析告警划分为同一告警组。
[0073]
例如,上述时间段的时长可以为10ms、50ms等。
[0074]
具体的,可以根据表示待分析告警的告警信息中携带的生成时间信息,确定待分析告警的告警生成时间,根据告警信息中携带的生成设备信息确定待分析告警的告警生成设备。
[0075]
s103:针对每一待分析告警,确定告警数量大于等于该待分析告警的告警数量的条件告警,并获得各条件告警与该待分析告警位于同一告警组的同组次数,根据上述同组次数,确定各条件告警与该待分析告警间存在的告警关系。
[0076]
本发明的一个实施例中,针对每一待分析告警,可以先在所有待分析告警中确定告警数量大于等于该待分析告警的条件告警,再遍历各个告警组,统计各个条件告警与该待分析告警处于同一告警组的次数。
[0077]
本发明的另一个实施例中,可以先按照告警数量由大到小的顺序对各个告警组中的告警进行排序,确定在各个告警组中位于该待分析告警之前的告警作为条件告警,并统计各条件告警在各告警组中位于该待分析告警之前的次数。
[0078]
具体的,条件告警与该待分析告警间的同组次数越多,说明条件告警与该待分析告警在由同一设备在短时间内先后生成的次数越多,条件告警与该待分析告警之间存在告警关系的概率越高。因此,根据上述同组次数,确定同组次数大于预设同组次数的条件告警与该待分析告警之间存在告警关系。
[0079]
另外,也可以通过以下步骤a-步骤b确定各条件告警与该待分析告警间存在的告警关系。
[0080]
步骤a:根据各条件告警与该待分析告警间的同组次数,计算各条件告警与该待分析告警间的同组频率。
[0081]
具体的,针对每一条件告警,上述同组频率可以为该条件告警的同组次数除以各条件告警的同组次数之和。上述同组频率可以被称为同组支持度。
[0082]
步骤b:若条件告警与该待分析告警间的同组频率大于预设同组频率,则确定该条件告警与该待分析告警之间存在告警关系。
[0083]
具体的,上述条件告警的同组频率越高,说明在各个与该待分析告警在同一设备短时间内先后生成的条件告警中,该条件告警与该待分析告警在同一设备短时间内先后生成的概率较高,则可以认为该条件告警与该待分析告警之间存在告警关系。
[0084]
此外,也可以通过以下步骤c确定各条件告警与该待分析告警间存在的告警关系。
[0085]
步骤c:根据上述同组次数,确定各条件告警与该待分析告警间存在的、除预设关系之外的告警关系。
[0086]
其中,上述预设关系为:已确定过的历史告警关系和/或错误告警关系。
[0087]
具体的,上述已确定过的历史告警关系为已知的告警关系,因此不需要重复确定,上述历史告警关系可以记录于白名单中。上述错误告警关系可以为人工设置的、不存在根因与衍生关系的告警组成的告警关系,上述错误告警关系可以记录于黑名单中。
[0088]
本发明的一个实施例中,在根据上述同组次数确定各条件告警与待分析告警间存
在的告警关系之后,可以从所确定的告警关系中剔除预设关系。
[0089]
本发明的又一个实施例中,两个告警之间存在告警关系表示两个告警中存在一个根因告警与一个衍生告警,在确定两个告警中存在告警关系后,还可以进一步的确定存在告警关系的两个告警中哪一个为根因告警,哪一个为衍生告警。
[0090]
具体的,由于根因告警表示的根因故障是导致衍生告警表示的衍生故障的原因,所以根因告警的告警数量往往大于衍生告警,若两个告警的告警数量不同,则可以认为告警数量大的告警为根因告警,告警数量小的告警为衍生告警。又由于根因告警表示的根因故障发生后,才会导致衍生告警表示的衍生故障的发生,因此根因告警的告警生成时间往往早于衍生告警的告警生成时间,若两个告警的告警数量相同,则可以将告警生成时间较早的告警确定为根因告警,另一个告警为衍生告警。
[0091]
再者,由于上述告警关系为两个告警之间的告警关系,因此上述告警关系可以以二项集的形式表示,上述二项集中可以记录有存在告警关系的两个告警的告警标识,上述告警标识可以为告警编号。其中,根因告警的告警标识可以作为二项集中位于前端的一项,衍生告警的告警标识可以作为二项集中位于后端的一项。
[0092]
由以上可见,若一种故障是导致另一种故障的根因,则若设备发生了根因故障,那么在短时间内发生另一种衍生故障的可能性较高,因此设备会在短时间内分别生成表示上述两种故障的告警。所以若同一设备在相近的时间多次生成两种不同的告警,则可以认为上述两种告警之间存在告警关系的可能性较高。本发明实施例提供的方案,将告警按照告警生成时间与告警生成设备划分为告警组之后,同一告警组中的告警由同一设备生成,且生成的时间较为接近,若条件告警与待分析告警位于同一告警组的同组次数较高,则可以认为同一设备多次在相近的时间生成该条件告警与该待分析告警,因此可以认为该条件告警与该待分析告警之间存在告警关系。
[0093]
并且,由于衍生故障是根因故障导致的,所以在大多数情况下,根因故障的发生次数大于衍生故障的发生次数,因此根因故障对应的根因告警的告警数量往往大于衍生故障对应的衍生告警的告警数量。由于本发明实施例中,条件告警的告警数量大于等于待分析告警的告警数量,因此可以大致确定存在告警关系的条件告警是待分析告警的根因告警。
[0094]
本发明的一个实施例中,在上述步骤s102之前,还可以包含以下步骤d-步骤e。
[0095]
步骤d:根据各待分析告警的告警次数,确定各待分析告警的出现频率。
[0096]
具体的,针对每一待分析告警,可以计算该待分析告警的告警次数除以各待分析告警的告警次数之和,得到该待分析告警的出现频率。上述出现频率可以被称为该待分析告警的支持度。
[0097]
步骤e:删除出现频率低于预设出现频率的待分析告警。
[0098]
具体的,若待分析告警的出现概率较低,则说明该待分析告警可能是单独发生的告警,与其他告警之间存在告警关系的可能性较低,因此可以删除出现概率低于预设出现概率的待分析告警,不确定上述待分析告警与其他告警之间的告警关系,从而可以节省确定告警关系时所需的计算资源,提高确定告警关系的效率。
[0099]
参见图2,为本发明实施例提供的第二种告警关系确定方法的流程示意图,与前述图1所示的实施例相比,上述步骤s102可以通过以下步骤s102a实现。
[0100]
s102a:根据告警生成时间,将待分析告警中告警生成设备相同的告警,按照故障
类型划分为告警组。
[0101]
具体的,上述故障类型可以为按照待分析告警表示的故障位置划分的类型,例如,若待分析告警表示基站故障,则该待分析告警属于基站类型;若待分析告警表示主板故障,则该待分析告警属于主板类型;若待分析告警表示芯片故障,则该待分析告警属于芯片类型等。
[0102]
上述故障类型也可以为告警表示的故障的故障影响等级,例如,上述故障影响等级可以为严重级、普通级等。
[0103]
同一待分析告警可以对应一个或多个故障类型,例如,若待分析告警表示芯片故障,由于芯片安装于主板上,主板安装于基站内,因此该待分析故障可以对应芯片类型、主板类型以及基站类型。
[0104]
本发明的一个实施例中,可以根据表示待生成告警的告警信息中包含的字段确定上述待分析告警对应的故障类型。例如,若告警信息中包含用于表示告警对应的基站的gnb字段,则说明告警信息对应的待分析告警表示基站故障,该待分析告警对应基站类型,若告警信息中包含用于表示告警对应的主板的board字段,则说明告警信息对应的待分析告警表示主板故障,待待分析告警对应主板类型。
[0105]
另外,可以按照故障类型将告警划分为不同的告警级别,例如,基站生成的所有告警均可以对应基站类型,对应基站类型的告警可以被划分为一级告警,对应基站类型的告警中有部分告警对应主板类型,对应主板类型的告警可以被划分为二级告警,对应主板类型的告警中有部分告警对应芯片类型,对应芯片类型的告警可以被划分为三级告警,以此类推。一级告警中包含二级告警,二级告警中包含三级告警。由此可见,属于同一告警级别的告警对应的故障类型相同,属于不同告警级别的告警对应的故障类型不同。
[0106]
本发明的一个实施例中,可以将告警生成设备相同、告警生成时间在同一时间段内,且对应同一故障类型的告警划分到同一告警组。若同一告警对应多个故障类型,则上述同一告警可以被划分到多个针对不同故障类型的告警组。
[0107]
另外,与前述图1相比,上述步骤s103可以通过以下步骤s103a-s103b实现。
[0108]
s103a:针对每一待分析告警,确定告警数量大于等于该待分析告警的告警数量的条件告警,并针对每一故障类型,获得各条件告警与该待分析告警位于该故障类型对应的同一告警组的同组次数,根据所获得的同组次数,确定各条件告警与该待分析告警间存在的针对该故障类型的告警关系。
[0109]
本发明的一个实施例中,针对每一故障类型,可以分别统计针对该故障类型的告警组中,各条件告警与该待分析告警的同组次数,从而根据同组次数确定各条件告警与该待分析告警间存在的针对该故障类型的告警关系。
[0110]
具体的,针对每一故障类型统计同组次数与确定告警关系的方式与前文步骤s103相似,本发明实施例对此不再赘述。
[0111]
s103b:获得针对每一故障类型均存在的告警关系。
[0112]
具体的,针对不同故障类型,得到的告警关系可能不同,因此可以确定针对不同故障类型的告警关系之间的交集,作为确定得到的告警关系。
[0113]
由以上可见,分别针对不同的故障类型,该故障类型对应的告警关系,若针对每一故障类型,某一告警关系均存在,才将上述告警关系确定为最终得到的告警关系,使得最终
得到的告警关系适用于每一故障类型。由于最终得到的告警关系经过多次确定与筛选,因此最终得到的告警关系较为准确。
[0114]
本发明的另一个实施例中,若所确定的告警关系中两个告警对应的故障类型不同,则可以直接将上述告警类型确定为最终得到的告警类型,从而可以实现跨故障类型的告警之间告警关系的确认。
[0115]
本发明的又一个实施例中,若上述待分析告警根据故障类型被划分为不同的告警级别,则可以先将属于一级告警的待分析告警作为执行步骤s101-s103的过程中使用的待分析告警,获得针对一级告警的告警关系。再去除不属于二级告警的待分析告警,重复执行步骤s101-s103,获得针对二级告警的告警关系,依次类推,确定得到分别针对各级告警的告警关系。获得针对各级告警均存在的告警关系,作为最终确定的告警关系。
[0116]
参见图3,为本发明实施例提供的第三种告警关系确定方法的流程示意图,与前述图1所示的实施例相比,在上述步骤s102之后,上述方法还包括以下步骤s104-s105。
[0117]
s104:按照第一顺序,对各个告警组中的告警排序。
[0118]
其中,上述第一顺序为:告警数量由大到小的顺序。
[0119]
参见表2,为本发明实施例提供的一种告警组的示例。
[0120]
表2
[0121][0122][0123]
其中,上述表2中的每一表项分别包含一个告警组中的各个告警。每一表项中各告警从前到后的排列顺序为上述第一顺序。
s103d实现。
[0138]
s103c:针对每一待分析告警,在上述告警链表组的各条告警链表中,确定位于该待分析告警对应的链表节点之前的链表节点,并将所确定的链表节点对应的告警确定为条件告警。
[0139]
具体的,告警链表组中的每一条告警链表中,沿节点链接顺序,一条告警链表中各个链表节点与一个告警组中顺序排列的各个告警一一对应,而告警组中告警的排列顺序为告警数量由大到小的顺序。因此在告警链表中越靠前的节点对应的告警,告警计数越大。位于待分析告警对应的链表节点之前的链表节点对应的告警的告警计数大于该待分析告警,因此上述所确定的链表节点对应的告警为条件告警。
[0140]
本发明的一个实施例中,可以从各告警链表的起始链表节点起,遍历告警链表,依次确定各个链表节点对应的告警,若所确定的链表节点对应该待分析告警,则将该条告警链表中已确定的、除待分析告警对应的链表节点之外的各链表节点对应的告警确定为条件告警。
[0141]
可以将所确定的、除待分析告警对应的链表节点之外的各链表节点依次链接,组成一个条件链表,上述条件链表可以被称为条件模式基。该待分析告警对应的条件模式基中包含的各节点对应的告警便是该待分析告警的条件告警。
[0142]
s103d:根据该待分析告警所对应链表节点的节点计数,确定各条件告警与该待分析告警位于同一告警组的同组次数,根据上述同组次数,确定各条件告警与该待分析告警间存在的告警关系。
[0143]
本发明的一个实施例中,可以通过以下步骤f确定各条件告警与该待分析告警位于同一告警组的同组次数。
[0144]
步骤f:针对每一条件告警,将与条件节点处于同一告警链表的待分析节点的节点计数之和,确定为该条件告警与该待分析告警位于同一告警组的同组次数。
[0145]
其中,上述条件节点为:该条件告警对应的链表节点,上述待分析节点为:该待分析告警对应的链表节点。
[0146]
具体的,针对每一条件告警,可以确定该条件告警对应的条件节点,从上述条件节点起沿节点链接方向,确定条件节点所在的告警链表中是否存在待分析节点,若存在,则在该条件告警对应的同组次数上累计所确定待分析节点的节点计数。其中,各条件告警对应的同组次数的初始值为0。
[0147]
另外,也可以在上述告警链表组中确定各待分析节点,再确定从起始链表节点到待分析节点的路径,将上述路径中待分析节点的节点计数记为各链表节点对应的条件告警对应的子同组次数。针对每一条件告警,将该条件告警对应的子同组次数之和,作为该条件告警对应的同组次数。
[0148]
本发明的另一个实施例中,在生成上述条件模式基的过程中,可以通过上述方式计算条件模式基中各节点对应的条件告警的同组次数,作为条件模式基中节点的节点计数,记录于上述条件模式基的节点中。则通过查询该待分析告警对应的条件模式基中各节点的节点计数,便可以确定该节点对应的条件告警对应的同组次数。
[0149]
由以上可见,本发明实施例可以通过构建告警链表组,以告警链表中链表节点的先后顺序表示链表节点对应的告警之间告警数量的大小关系,并且以节点计数表示各告警
组中第一告警位于第二告警之前、且与第二告警相邻的次数。从而可以通过上述告警链表组中链表节点的前后关系确定待分析告警的条件告警,并且根据节点计数确定条件告警对应的同组次数。并且采用链表结构生成的告警链表组结构清晰,存储简单,与直接存储告警的告警信息相比,采用告警链表组的形式存储告警信息,能够较为简单地记录告警之间的关系。
[0150]
参见图4,为本发明实施例提供的第四种告警关系确定方法的流程示意图,与前述图3所示的实施例相比,上述步骤s105可以通过以下步骤s105a-s105d实现。
[0151]
s105a:生成目标告警组对应的告警链表,将所生成告警链表中各链表节点的节点计数确定为1。
[0152]
其中,起始的目标告警组是任意一个告警组。
[0153]
具体的,沿告警链表中链表节点的链接顺序,所生成的告警链表中各个链表节点与目标告警组中顺序排列的各个告警一一对应。上述目标告警组可以是包含告警最多的告警组。
[0154]
s105b:从未生成告警链表的告警组中确定一个告警组,作为新的目标告警组。
[0155]
具体的,从未生成告警链表的告警组即:未作为过目标告警组的告警组。
[0156]
本发明的一个实施例中,可以从未生成告警链表的告警组中随机确定一个告警组,作为目标告警组,也可以选择包含的告警最多的告警组作为目标告警组等。
[0157]
s105c:在已生成的告警链表中,确定从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点。
[0158]
本发明的一个实施例中,可以确定所对应告警与目标告警组中起始告警相同的起始链表节点,若存在上述起始链表节点,则确定上述起始链表节点所链接的下一链表节点对应的告警是否与目标告警组中第二个告警相同,依次类推,直至链表节点对应的告警与目标告警组中相同排列序号处的告警不同。从而确定从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点。
[0159]
若确定节点成功,则说明已生成的告警链表中,存在从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,可以执行步骤s105d。
[0160]
若确定节点失败,则说明已生成的告警链表中,不存在从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,则可以为该目标告警组单独生成一条告警链表,返回执行步骤s105a。
[0161]
s105d:分别将所确定链表节点的节点计数加1,并生成子告警链表,将所确定出的最后一个链表节点链接于上述子告警链表的起始链表节点,并将子告警链表中各链表节点的节点计数确定为1。
[0162]
其中,沿节点链接顺序,上述子告警链表中各链表节点与上述目标告警组中顺序排列于目标告警之后的告警一一对应。上述目标告警为:所确定出的最后一个链表节点对应的告警。
[0163]
具体的,若确定节点成功,则可以将所确定的节点分别作为目标告警组中目标告警之前的告警对应的节点,并为目标告警之后的告警生成子告警链表,将所确定的最后一个链表节点链接于上述子告警链表的起始链表节点。因此所确定的各个链表节点与所生成的子告警链表中的各个链表节点共同组成目标告警组对应的告警链表,上述告警链表中的
各个链表节点分别对应目标告警组中的一个告警。
[0164]
若在生成目标告警组的告警链表之后,还存在未生成告警链表的告警组,则返回执行上述步骤s105b。
[0165]
由以上可见,若已生成的告警链表中,存在从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,则不需要再单独为目标告警组中目标告警之前的告警生成链表节点,直接将所确定的链表节点的节点计数加1,再将所确定的最后一个链表节点链接于所生成的子告警链表的起始链表节点。从而可以保证告警组间从起始告警起依次相同的告警中,同一排列序号的告警对应同一链表节点。若不存在从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,则单独为该目标告警组生成一条告警链表,依次类推,直至为所有告警组均生成告警链表。并且告警链表中各个链表节点与第一告警组中顺序排列的各个告警一一对应。
[0166]
下面以前述表2中涉及的告警组为例,描述生成上述10个告警组对应的告警链表组的过程。
[0167]
参见图5a,为本发明实施例提供的第一种告警链表组的示意图。
[0168]
其中,上述表2中的第一个告警组作为目标告警组,上述图5a中除根节点之外包含一条对应第一个告警组的告警链表,沿上述告警链表的节点链接顺序,各链表节点依次对应告警a、告警d、告警e,告警f、告警b,各链表节点的节点计数均为1,与告警a、告警d、告警e、告警f,告警b在第一个告警组中的排列顺序相同。
[0169]
参见图5b,为本发明实施例提供的第二种告警链表组的示意图。
[0170]
其中,上述表2中的第二个告警组作为目标告警组,当前的目标告警组中第一个告警为告警a,第二个告警为告警d,除根节点之外已生成的告警链表中的第一个链表节点对应的告警是告警a,第二个链表节点对应的告警是告警d的路径,图中虚线框框出的部分为在已生成的告警链表中,从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,即为告警a与告警d对应的链表节点,与前述图5a所示的告警链表组相比,虚线框中各链表节点的节点计数加1。可以生成子告警链表,上述子告警链表中包含对应告警g的链表节点,并将所确定的最后一个链表节点,即告警d对应的链表节点链接于子告警链表的起始链表节点,即告警g对应的链表节点。
[0171]
参见图5c,为本发明实施例提供的第三种告警链表组的示意图。
[0172]
其中,上述表2中的第三个告警组作为目标告警组,当前的目标告警组中包含告警e,除根节点之外已生成的告警链表中不存在起始链表节点对应告警e的告警链表,因此不存在从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点。则可以单独为当前的目标告警组生成一个告警链表,上述告警链表中包含一个对应告警e的链表节点,该链表节点的节点计数为1。
[0173]
参见图5d,为本发明实施例提供的第四种告警链表组的示意图。
[0174]
其中,上述表2中的第四个告警组作为目标告警组,当前目标告警组中第一个告警为告警a,第二个告警为告警d,第三个告警为告警e,除根节点之外已生成的告警链表中存在第一个链表节点对应的告警是告警a,第二个链表节点对应的告警是告警d,第三个链表节点对应的告警是告警e的路径。图中虚线框框出的部分为在已生成的告警链表中,从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,即为
上述路径中包含的链表节点,与前述图5c所示的告警链表组相比,虚线框中各链表节点的节点计数加1。可以生成子告警链表,上述子告警链表中包含依次对应告警g、告警c的链表节点,并将所确定的最后一个链表节点,即告警e对应的链表节点链接于子告警链表的起始链表节点,即告警g对应的链表节点。
[0175]
参见图5e,为本发明实施例提供的第五种告警链表组的示意图。
[0176]
其中,上述表2中的第五个告警组作为目标告警组,当前目标告警组中第一个告警为告警a,第二个告警为告警d,第三个告警为告警e,第四个告警为告警g,除根节点之外已生成的告警链表中存在第一个链表节点对应的告警是告警a,第二个链表节点对应的告警是告警d,第三个链表节点对应的告警是告警e,第四个链表节点对应的告警是告警g的路径。图中虚线框框出的部分为在已生成的告警链表中,从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,即为上述路径中包含的链表节点,与前述图5d所示的告警链表组相比,虚线框中各链表节点的节点计数加1。当前的目标告警组中不包含其他告警,则不需生成子告警链表。
[0177]
参见图5f,为本发明实施例提供的第六种告警链表组的示意图。
[0178]
其中,上述表2中的第六个告警组作为目标告警组,当前目标告警组中第一个告警为告警e,除根节点之外已生成的告警链表中存在第一个链表节点对应的告警是告警e的路径。图中虚线框框出的部分为在已生成的告警链表中,从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,即为上述路径中包含的链表节点,与前述图5e所示的告警链表组相比,虚线框中各链表节点的节点计数加1。当前的目标告警组中不包含其他告警,则不需生成子告警链表。
[0179]
参见图5g,为本发明实施例提供的第七种告警链表组的示意图。
[0180]
其中,上述表2中的第七个告警组作为目标告警组。当前目标告警组中第一个告警为告警a,第二个告警为告警d,第三个告警为告警e,第四个告警为告警f,第五个告警为告警b,除根节点之外已生成的告警链表中存在第一个链表节点对应的告警是告警a,第二个链表节点对应的告警是告警d,第三个链表节点对应的告警是告警e,第四个链表节点对应的告警是告警f,第五个链表节点对应的告警是告警b的路径。图中虚线框框出的部分为在已生成的告警链表中,从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,即为上述路径中包含的链表节点,与前述图5f所示的告警链表组相比,虚线框中各链表节点的节点计数加1。当前的目标告警组中不包含其他告警,则不需生成子告警链表。
[0181]
参见图5h,为本发明实施例提供的第八种告警链表组的示意图。
[0182]
其中,上述表2中的第八个告警组作为目标告警组。当前目标告警组中第一个告警为告警a,第二个告警为告警d,除根节点之外已生成的告警链表中存在第一个链表节点对应的告警是告警a,第二个链表节点对应的告警是告警d的路径。图中虚线框框出的部分为在已生成的告警链表中,从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,即为上述路径中包含的链表节点,与前述图5g所示的告警链表组相比,虚线框中各链表节点的节点计数加1。可以生成子告警链表,上述子告警链表中包含对应告警c的链表节点,并将所确定的最后一个链表节点,即告警d对应的链表节点链接于子告警链表的起始链表节点,即告警c对应的链表节点。
[0183]
参见图5i,为本发明实施例提供的第九种告警链表组的示意图。
[0184]
其中,上述表2中的第九个告警组作为目标告警组。当前目标告警组中一个告警为告警a,第二个告警为告警d,第三个告警为告警e,第四个告警为告警g。除根节点之外已生成的告警链表中存在第一个链表节点对应的告警是告警a,第二个链表节点对应的告警是告警d,第三个链表节点对应的告警是告警e,第四个链表节点对应的告警是告警g的路径。图中虚线框框出的部分为在已生成的告警链表中,从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,即为上述路径中包含的链表节点,与前述图5h所示的告警链表组相比,虚线框中各链表节点的节点计数加1。
[0185]
参见图5j,为本发明实施例提供的第十种告警链表组的示意图。
[0186]
其中,上述表2中的第十个告警组作为目标告警组。当前目标告警组中一个告警为告警a,第二个告警为告警d,第三个告警为告警e,第四个告警为告警g。除根节点之外已生成的告警链表中存在第一个链表节点对应的告警是告警a,第二个链表节点对应的告警是告警d,第三个链表节点对应的告警是告警e,第四个链表节点对应的告警是告警g的路径。图中虚线框框出的部分为在已生成的告警链表中,从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,即为上述路径中包含的链表节点,与前述图5i所示的告警链表组相比,虚线框中各链表节点的节点计数加1。
[0187]
在生成上述图5j所示的告警链表组之后,可以分别确定针对各个待分析告警的条件模式基。
[0188]
参见图6a,为本发明实施例提供的第一种条件模式基的示意图。
[0189]
其中,图6a中所示的条件模式基是针对告警b的条件模式基。图6a中左侧部分为图5j所示的告警链表组中从起始链表节点到对应告警b的链表节点的路径,由上述路径可见,对应告警a、告警d、告警e、告警f的链表节点均位于对应告警b的链表节点之前。图6a右侧部分为基于上述路径确定的针对告警b的条件模式基,条件模式基中包含分别针对告警a、告警d、告警e、告警f的节点,每一节点的节点计数为所对应告警与告警b之间的同组次数。
[0190]
参见图6b,为本发明实施例提供的第二种条件模式基的示意图。
[0191]
其中,图6b中所示的条件模式基是针对告警c的条件模式基。图6b中左侧部分为图5j所示的告警链表组中从起始链表节点到对应告警c的链表节点的路径,由上述路径可见,对应告警a、告警d、告警e、告警g的链表节点均位于对应告警c的链表节点之前。图6b右侧部分为基于上述路径确定的针对告警c的条件模式基,条件模式基中包含分别针对告警a、告警d、告警e、告警g的节点,每一节点的节点计数为所对应告警与告警c之间的同组次数。
[0192]
参见图6c,为本发明实施例提供的第三种条件模式基的示意图。
[0193]
其中,图6c中所示的条件模式基是针对告警f的条件模式基。图6c中左侧部分为图5j所示的告警链表组中从起始链表节点到对应告警f的链表节点的路径,由上述路径可见,对应告警a、告警d、告警e的链表节点均位于对应告警f的链表节点之前。图6c右侧部分为基于上述路径确定的针对告警f的条件模式基,条件模式基中包含分别针对告警a、告警d、告警e的节点,每一节点的节点计数为所对应告警与告警f之间的同组次数。
[0194]
参见图6d,为本发明实施例提供的第四种条件模式基的示意图。
[0195]
其中,图6d中所示的条件模式基是针对告警g的条件模式基。图6d中左侧部分为图5j所示的告警链表组中从起始链表节点到对应告警g的链表节点的路径,由上述路径可见,
对应告警a、告警d、告警e的链表节点均位于对应告警g的链表节点之前。图6d右侧部分为基于上述路径确定的针对告警g的条件模式基,条件模式基中包含分别针对告警a、告警d、告警e的节点,每一节点的节点计数为所对应告警与告警g之间的同组次数。
[0196]
参见图6e,为本发明实施例提供的第五种条件模式基的示意图。
[0197]
其中,图6e中所示的条件模式基是针对告警e的条件模式基。图6e中左侧部分为图5j所示的告警链表组中从起始链表节点到对应告警e的链表节点的路径,由上述路径可见,对应告警a、告警d、告警e的链表节点均位于对应告警e的链表节点之前。图6e右侧部分为基于上述路径确定的针对告警e的条件模式基,条件模式基中包含分别针对告警a、告警d的节点,每一节点的节点计数为所对应告警与告警e之间的同组次数。
[0198]
参见图6f,为本发明实施例提供的第六种条件模式基的示意图。
[0199]
其中,图6f中所示的条件模式基是针对告警d的条件模式基。图6f中左侧部分为图5j所示的除根节点之外的告警链表组中从起始链表节点到对应告警d的链表节点的路径,由上述路径可见,对应告警a的链表节点位于对应告警d的链表节点之前。图6f右侧部分为基于上述路径确定的针对告警d的条件模式基,条件模式基中包含针对告警a的节点,节点计数为告警a与告警d之间的同组次数。
[0200]
参见图7,为本发明实施例提供的第五种告警关系确定方法的流程示意图,与前述图4所示的实施例相比,在步骤s105a之后还包括以下步骤s106。
[0201]
s106:针对上述告警链表中的每一链表节点,将项头表中与该链表节点对应同一告警的项头表节点链接于该链表节点。
[0202]
其中,上述项头表中的各项头表节点分别与待分析告警一一对应。
[0203]
具体的,上述项头表也可以以链表的形式表示,上述项头表中的各项头表节点依次链接,项头表中的各项头表节点中分别记录有所对应的告警的告警标识。
[0204]
本发明的一个实施例中,可以直接将上述项头表节点链接于对应同一告警的链表节点。也可以将项头表节点链接于上述告警链表组中第一个生成的对应同一告警的链表节点,第一个生成的链表节点链接于第二个生成的对应同一告警的链表节点,依次类推。则项头表节点与第一个生成的对应同一告警的链表节点直接链接,与其他对应同一告警的链表节点间接链接。
[0205]
另外,用于链接上述项头表节点与链表节点的指针与告警链表组中链表节点之间的指针不同。用于链接对应相同告警的链表节点的指针与告警链表组中链表节点之间的指针不同。
[0206]
与前述图4相比,在上述步骤s105d之后,还包括以下步骤s107。
[0207]
s107:针对上述子告警链表中的每一链表节点,将项头表中与该链表节点对应同一告警的项头表节点链接于该链表节点。
[0208]
本发明的一个实施例中,上述将项头表与子告警链表中的链表节点链接的方式与前述步骤s106相似,在此不再赘述。
[0209]
与前述图4所示的实施例相比,上述步骤s103c还可以通过以下步骤s103c1-s103c2实现。
[0210]
s103c1:针对每一待分析告警,将该待分析告警在项头表中对应的项头表节点所链接的链表节点,确定为该待分析告警对应的链表节点。
[0211]
具体的,若上述项头表节点直接连接各个链表节点,则可以直接将项头表直接链接的链表节点确定为待分析告警对应的链表节点。
[0212]
若上述项头表节点与部分链表节点间接链接,则可以先确定与项头表节点直接链接的第一链表节点,再确定第一链表节点链接的第二链表节点,依次类推,确定该待分析告警对应的各个链表节点。
[0213]
s103c2:将所确定的该待分析告警对应的链表节点之前的链表节点对应的告警确定为条件告警。
[0214]
由以上可见,由于上述项头表中的各个项头表节点分别链接对应同一告警的链表节点,因此通过上述项头表节点便可以快速的查找到告警链表组中包含的对应待分析告警的链表节点。而不需要遍历上述告警链表组,从而可以减少确定条件告警时所需的计算量。
[0215]
本发明的一个实施例中,若上述告警为基站生成的告警,且告警分为不同的告警级别,对应基站类型的告警可以被划分为一级告警,则可以通过以下实施例确定告警之间的告警关系。
[0216]
参见图8,为本发明实施例提供的一种应用于基站告警的告警关系确定方法的流程示意图。
[0217]
s801:判断是否是首次进行告警关系确定。
[0218]
若为是,则执行步骤s802,否则执行s803。
[0219]
s802:将黑名单与白名单设置为空。
[0220]
由于首次进行告警关系确定时,还不存在已经确定的历史告警关系,也不存在已知的错误告警关系,因此可以将黑名单与白名单设置为空。并继续执行步骤s803。
[0221]
s803:获取预设时间段内生成的待分析告警。
[0222]
s804:根据告警生成时间对所获取的待分析告警进行分组,获得初始告警组。
[0223]
s805:若上述待分析告警均为一级告警,则将初级告警组中的告警按照告警生成设备划分为告警组。
[0224]
具体的,由于上述待分析告警为基站生成的告警,因此可以根据生成待分析告警的基站对初始告警组中的告警进行进一步划分,得到各个告警组。
[0225]
s806:根据上述告警组确定得到告警之间存在的告警关系。
[0226]
具体的,确定告警关系的方式与前文步骤s103所示的实施例相似,本发明实施例对此不再赘述。
[0227]
s807:根据存在告警关系的两个告警的告警数量以及告警生成时间,确定两个告警中的根因告警与衍生告警。
[0228]
s808:判断所确定的告警关系中的两个告警是否为属于不同告警级别的告警。
[0229]
若为是,则执行步骤s809,否则执行步骤s814。
[0230]
s809:去除所确定的告警关系中属于黑名单和/或白名单的告警关系。
[0231]
s810:根据所确定的告警关系更新上述黑名单与白名单。
[0232]
具体的,可以向工作人员展示所获得的上述告警关系,在工作人员对上述告警关系进行筛选之后,确定添加至黑名单与白名单中的告警关系。
[0233]
s811:若上述待分析告警均不是一级告警,则将初级告警组中的告警按照目标级别划分为告警组。
[0234]
其中,初始的目标级别为二级。
[0235]
s812:根据上述告警组确定得到告警之间存在的针对目标级别的告警关系。
[0236]
s813:根据存在针对目标级别的告警关系的两个告警的告警数量以及告警生成时间,确定两个告警中的根因告警与衍生告警。
[0237]
s814:获取所确定的针对目标级别的告警关系中与针对第一级别的告警关系相同的告警关系。
[0238]
在获取得到上述告警关系后,可以执行步骤s809,以去除所获取的告警关系中属于黑名单和/或白名单的告警关系。
[0239]
若上述目标级别为最高级别,则返回步骤s803,重新获取新的待分析告警继续进行下一轮告警关系的确认。
[0240]
若上述目标级别不是最高级别,则执行步骤s815。
[0241]
s815:将目标级别更新为下一级别,并返回执行步骤s811。
[0242]
具体的,上述图8所示的实施例为上述告警关系确定方法的一个具体的实现方案,与前述告警关系确定方法的实施例相似,本发明实施例对此不再赘述。
[0243]
与前述告警关系确定方法相对应,本发明实施例提供了一种告警关系确定设备。
[0244]
参见图9,为本发明实施例提供的一种告警关系确定设备的结构示意图,包括存储器901,收发机902,处理器903:
[0245]
存储器901,用于存储计算机程序;收发机902,用于在所述处理器的控制下收发数据;处理器903,用于读取所述存储器中的计算机程序并执行以下操作:
[0246]
获得各待分析告警的告警数量;
[0247]
根据告警生成时间与告警生成设备,将待分析告警划分为告警组;
[0248]
针对每一待分析告警,确定告警数量大于等于该待分析告警的告警数量的条件告警,并获得各条件告警与该待分析告警位于同一告警组的同组次数,根据所述同组次数,确定各条件告警与该待分析告警间存在的告警关系。
[0249]
其中,在图9中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器903代表的一个或多个处理器和存储器901代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机902可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元,这些传输介质包括无线信道、有线信道、光缆等传输介质。处理器903负责管理总线架构和通常的处理,存储器901可以存储处理器903在执行操作时所使用的数据。
[0250]
处理器903可以是中央处埋器(cpu)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或复杂可编程逻辑器件(complex programmable logic device,cpld),处理器也可以采用多核架构。
[0251]
由以上可见,若一种故障是导致另一种故障的根因,则若设备发生了根因故障,那么在短时间内发生另一种衍生故障的可能性较高,因此设备会在短时间内分别生成表示上述两种故障的告警。所以若同一设备在相近的时间多次生成两种不同的告警,则可以认为上述两种告警之间存在告警关系的可能性较高。本发明实施例提供的方案,将告警按照告
警生成时间与告警生成设备划分为告警组之后,同一告警组中的告警由同一设备生成,且生成的时间较为接近,若条件告警与待分析告警位于同一告警组的同组次数较高,则可以认为同一设备多次在相近的时间生成该条件告警与该待分析告警,因此可以认为该条件告警与该待分析告警之间存在告警关系。
[0252]
并且,由于衍生故障是根因故障导致的,所以在大多数情况下,根因故障的发生次数大于衍生故障的发生次数,因此根因故障对应的根因告警的告警数量往往大于衍生故障对应的衍生告警的告警数量。由于本发明实施例中,条件告警的告警数量大于等于待分析告警的告警数量,因此可以大致确定存在告警关系的条件告警是待分析告警的根因告警。
[0253]
本发明的一个实施例中,所述根据告警生成时间与告警生成设备,将待分析告警划分为告警组,具体包括:
[0254]
根据告警生成时间,将待分析告警中告警生成设备相同的告警,按照故障类型划分为告警组;
[0255]
所述获得各条件告警与该待分析告警位于同一告警组的同组次数,根据所述同组次数,确定各条件告警与该待分析告警间存在的告警关系,具体包括:
[0256]
针对每一故障类型,获得各条件告警与该待分析告警位于该故障类型对应的同一告警组的同组次数,根据所获得的同组次数,确定各条件告警与该待分析告警间存在的针对该故障类型的告警关系;
[0257]
获得针对每一故障类型均存在的告警关系。
[0258]
由以上可见,分别针对不同的故障类型,该故障类型对应的告警关系,若针对每一故障类型,某一告警关系均存在,才将上述告警关系确定为最终得到的告警关系,使得最终得到的告警关系适用于每一故障类型。由于最终得到的告警关系经过多次确定与筛选,因此最终得到的告警关系较为准确。
[0259]
本发明的一个实施例中,在所述根据告警生成时间与告警生成设备,将待分析告警划分为告警组之后,还包括:
[0260]
按照第一顺序,对各个告警组中的告警排序,其中,所述第一顺序为:告警数量由大到小的顺序;
[0261]
依据各告警组,生成告警链表组,并确定告警链表中各链表节点的节点计数,其中,沿节点链接顺序,一条告警链表中各个链表节点与一个告警组中顺序排列的各个告警一一对应,各告警组中从起始告警起依次相同的告警中,同一排列序号的告警对应同一链表节点;一条告警链表中起始链表节点的节点计数为:该链表节点对应的告警在告警组中位于首位的次数,除所述起始链表节点外其他链表节点的节点计数为:各告警组中第一告警位于第二告警之前、且与第二告警相邻的次数,第一告警为:所述其他链表节点的前一链表节点对应的告警,第二告警为:所述其他链表节点对应的告警;
[0262]
所述确定告警数量大于等于该待分析告警的告警数量的条件告警,并获得各条件告警与该待分析告警位于同一告警组的同组次数,具体包括:
[0263]
在所述告警链表组的各条告警链表中,确定位于该待分析告警对应的链表节点之前的链表节点,并将所确定的链表节点对应的告警确定为条件告警;
[0264]
根据该待分析告警所对应链表节点的节点计数,确定各条件告警与该待分析告警位于同一告警组的同组次数。
[0265]
由以上可见,本发明实施例可以通过构建告警链表组,以告警链表中链表节点的先后顺序表示链表节点对应的告警之间告警数量的大小关系,并且以节点计数表示各告警组中第一告警位于第二告警之前、且与第二告警相邻的次数。从而可以通过上述告警链表组中链表节点的前后关系确定待分析告警的条件告警,并且根据节点计数确定条件告警对应的同组次数。并且采用链表结构生成的告警链表组结构清晰,存储简单,与直接存储告警的告警信息相比,采用告警链表组的形式存储告警信息,能够较为简单地记录告警之间的关系。
[0266]
本发明的一个实施例中,所述依据各告警组,生成告警链表组,并确定告警链表中各链表节点的节点计数,具体包括:
[0267]
生成目标告警组对应的告警链表,将所生成告警链表中各链表节点的节点计数确定为1,其中,起始的目标告警组是任意一个告警组;
[0268]
从未生成告警链表的告警组中确定一个告警组,作为新的目标告警组;
[0269]
在已生成的告警链表中,确定从起始链表节点起所对应告警与所述目标告警组中起始告警起的告警依次相同的链表节点;
[0270]
若确定节点成功,则分别将所确定链表节点的节点计数加1,并生成子告警链表,将所确定出的最后一个链表节点链接于所述子告警链表的起始链表节点,并将子告警链表中各链表节点的节点计数确定为1,其中,沿节点链接顺序,所述子告警链表中各链表节点与所述目标告警组中顺序排列于目标告警之后的告警一一对应,所述目标告警为:所确定出的最后一个链表节点对应的告警;
[0271]
若确定节点失败,则返回执行所述生成目标告警组对应的告警链表的步骤;
[0272]
若存在未生成告警链表的告警组,则返回执行所述未生成告警链表的告警组中确定一个告警组,作为新的目标告警组的步骤。
[0273]
由以上可见,若已生成的告警链表中,存在从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,则不需要再单独为目标告警组中目标告警之前的告警生成链表节点,直接将所确定的链表节点的节点计数加1,再将所确定的最后一个链表节点链接于所生成的子告警链表的起始链表节点。从而可以保证告警组间从起始告警起依次相同的告警中,同一排列序号的告警对应同一链表节点。若不存在从起始链表节点起所对应告警与上述目标告警组中起始告警起的告警依次相同的链表节点,则单独为该目标告警组生成一条告警链表,依次类推,直至为所有告警组均生成告警链表。并且告警链表中各个链表节点与第一告警组中顺序排列的各个告警一一对应。
[0274]
本发明的一个实施例中,在所述生成目标告警组对应的告警链表之后,还包括:
[0275]
针对所述告警链表中的每一链表节点,将项头表中与该链表节点对应同一告警的项头表节点链接于该链表节点,其中,所述项头表中的各项头表节点分别与待分析告警一一对应;
[0276]
在所述生成子告警链表,将所确定出的最后一个链表节点链接于所述子告警链表的起始链表节点之后,还包括:
[0277]
针对所述子告警链表中的每一链表节点,将项头表中与该链表节点对应同一告警的项头表节点链接于该链表节点;
[0278]
所述在所述告警链表组的各条告警链表中,确定位于该待分析告警对应的链表节
点之前的链表节点,并将所确定的链表节点对应的告警确定为条件告警,具体包括:
[0279]
将该待分析告警在项头表中对应的项头表节点所链接的链表节点,确定为该待分析告警对应的链表节点;
[0280]
将所确定的该待分析告警对应的链表节点之前的链表节点对应的告警确定为条件告警。
[0281]
由以上可见,由于上述项头表中的各个项头表节点分别链接对应同一告警的链表节点,因此通过上述项头表节点便可以快速的查找到告警链表组中包含的对应待分析告警的链表节点。而不需要遍历上述告警链表组,从而可以减少确定条件告警时所需的计算量。
[0282]
本发明的一个实施例中,所述根据该待分析告警所对应链表节点的节点计数,确定各条件告警与该待分析告警位于同一告警组的同组次数,具体包括:
[0283]
针对每一条件告警,将与条件节点处于同一告警链表的待分析节点的节点计数之和,确定为该条件告警与该待分析告警位于同一告警组的同组次数,其中,所述条件节点为:该条件告警对应的链表节点,所述待分析节点为:该待分析告警对应的链表节点。
[0284]
本发明的一个实施例中,所述告警链表组中各条告警链表的起始节点链接于树形结构的根节点;
[0285]
各条告警链表中的各个告警节点为所述树形结构中的子节点。
[0286]
本发明的一个实施例中,在所述获得各待分析告警的告警数量之后,还包括:
[0287]
根据各待分析告警的告警次数,确定各待分析告警的出现频率;
[0288]
删除出现频率低于预设出现频率的待分析告警。
[0289]
本发明的一个实施例中,所述根据所述同组次数,确定各条件告警与该待分析告警间存在的告警关系,具体包括:
[0290]
根据各条件告警与该待分析告警间的同组次数,计算各条件告警与该待分析告警间的同组频率;
[0291]
若条件告警与该待分析告警间的同组频率大于预设同组频率,则确定该条件告警与该待分析告警之间存在告警关系。
[0292]
本发明的一个实施例中,所述根据所述同组次数,确定各条件告警与该待分析告警间存在的告警关系,具体包括:
[0293]
根据所述同组次数,确定各条件告警与该待分析告警间存在的、除预设关系之外的告警关系,其中,所述预设关系为:已确定过的历史告警关系和/或错误告警关系。
[0294]
与前述告警关系确定方法相对应,本发明实施例还提供了一种告警关系确定装置。
[0295]
参见图10,为本发明实施例提供的一种告警关系确定装置的结构示意图。
[0296]
数量确定模块1001,用于获得各待分析告警的告警数量;
[0297]
告警组划分模块1002,用于根据告警生成时间与告警生成设备,将待分析告警划分为告警组;
[0298]
关系确定模块1003,用于针对每一待分析告警,确定告警数量大于等于该待分析告警的告警数量的条件告警,并获得各条件告警与该待分析告警位于同一告警组的同组次数,根据所述同组次数,确定各条件告警与该待分析告警间存在的告警关系。
[0299]
具体的,上述告警关系确定装置确定告警关系的方式与前述告警关系确定方法所
示的实施例相似,本发明实施例对此不再赘述。
[0300]
由以上可见,若一种故障是导致另一种故障的根因,则若设备发生了根因故障,那么在短时间内发生另一种衍生故障的可能性较高,因此设备会在短时间内分别生成表示上述两种故障的告警。所以若同一设备在相近的时间多次生成两种不同的告警,则可以认为上述两种告警之间存在告警关系的可能性较高。本发明实施例提供的方案,将告警按照告警生成时间与告警生成设备划分为告警组之后,同一告警组中的告警由同一设备生成,且生成的时间较为接近,若条件告警与待分析告警位于同一告警组的同组次数较高,则可以认为同一设备多次在相近的时间生成该条件告警与该待分析告警,因此可以认为该条件告警与该待分析告警之间存在告警关系。
[0301]
并且,由于衍生故障是根因故障导致的,所以在大多数情况下,根因故障的发生次数大于衍生故障的发生次数,因此根因故障对应的根因告警的告警数量往往大于衍生故障对应的衍生告警的告警数量。由于本发明实施例中,条件告警的告警数量大于等于待分析告警的告警数量,因此可以大致确定存在告警关系的条件告警是待分析告警的根因告警。
[0302]
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一告警关系确定方法的步骤。
[0303]
应用本发明实施例提供的计算机可读存储介质确定告警关系时,若一种故障是导致另一种故障的根因,则若设备发生了根因故障,那么在短时间内发生另一种衍生故障的可能性较高,因此设备会在短时间内分别生成表示上述两种故障的告警。所以若同一设备在相近的时间多次生成两种不同的告警,则可以认为上述两种告警之间存在告警关系的可能性较高。本发明实施例提供的方案,将告警按照告警生成时间与告警生成设备划分为告警组之后,同一告警组中的告警由同一设备生成,且生成的时间较为接近,若条件告警与待分析告警位于同一告警组的同组次数较高,则可以认为同一设备多次在相近的时间生成该条件告警与该待分析告警,因此可以认为该条件告警与该待分析告警之间存在告警关系。
[0304]
并且,由于衍生故障是根因故障导致的,所以在大多数情况下,根因故障的发生次数大于衍生故障的发生次数,因此根因故障对应的根因告警的告警数量往往大于衍生故障对应的衍生告警的告警数量。由于本发明实施例中,条件告警的告警数量大于等于待分析告警的告警数量,因此可以大致确定存在告警关系的条件告警是待分析告警的根因告警。
[0305]
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一告警关系确定方法。
[0306]
应用本发明实施例提供的计算机程序产品确定告警关系时,若一种故障是导致另一种故障的根因,则若设备发生了根因故障,那么在短时间内发生另一种衍生故障的可能性较高,因此设备会在短时间内分别生成表示上述两种故障的告警。所以若同一设备在相近的时间多次生成两种不同的告警,则可以认为上述两种告警之间存在告警关系的可能性较高。本发明实施例提供的方案,将告警按照告警生成时间与告警生成设备划分为告警组之后,同一告警组中的告警由同一设备生成,且生成的时间较为接近,若条件告警与待分析告警位于同一告警组的同组次数较高,则可以认为同一设备多次在相近的时间生成该条件告警与该待分析告警,因此可以认为该条件告警与该待分析告警之间存在告警关系。
[0307]
并且,由于衍生故障是根因故障导致的,所以在大多数情况下,根因故障的发生次
数大于衍生故障的发生次数,因此根因故障对应的根因告警的告警数量往往大于衍生故障对应的衍生告警的告警数量。由于本发明实施例中,条件告警的告警数量大于等于待分析告警的告警数量,因此可以大致确定存在告警关系的条件告警是待分析告警的根因告警。
[0308]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0309]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0310]
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于告警关系确定设备、装置、存储介质及计算机程序实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0311]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
[0312]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机可执行指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机可执行指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0313]
这些处理器可执行指令也可存储在能引导计算机或其他可编程数据处理设备以
特定方式工作的处理器可读存储器中,使得存储在该处理器可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0314]
这些处理器可执行指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0315]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术实施例及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1