一种告警场景挖掘方法

文档序号:1963624 发布日期:2021-12-14 浏览:20次 >En<

阅读说明:本技术 一种告警场景挖掘方法 (Alarm scene mining method ) 是由 杨康 葛晓波 王鹏 汪洋 于 2021-09-16 设计创作,主要内容包括:本发明涉及一种告警场景挖掘方法,包括如下步骤:获取存储有告警数据的历史记录;对历史记录进行聚类处理及告警模板匹配,得到包含有模板id的告警数据记录;按时间窗口切分告警数据记录,得到若干告警数据记录分段;统计每一个模板id在哪些告警数据记录分段中出现过,形成告警数据记录分段集合,采用哈希表记录模板id及告警数据记录分段集合;计算两两模板id之间的相关性,并构建相关性矩阵。本发明,采用机器学习技术,对海量的告警数据进行告警分析,识别其中包含的告警场景,并记录为告警模板,实现告警分析的自动化、智能化及标准化,能够有效的帮助运维人员进行故障诊断以及问题定位,提高效率和解决问题的能力。(The invention relates to an alarm scene mining method, which comprises the following steps: acquiring a history record in which alarm data is stored; clustering the historical records and matching alarm templates to obtain alarm data records containing template ids; segmenting the alarm data records according to a time window to obtain a plurality of alarm data record segments; counting the alarm data recording segments in which each template id appears to form an alarm data recording segment set, and recording the template ids and the alarm data recording segment set by adopting a hash table; and calculating the correlation between every two template ids and constructing a correlation matrix. According to the invention, the machine learning technology is adopted to perform alarm analysis on massive alarm data, identify alarm scenes contained in the alarm data and record the alarm scenes as the alarm template, so that the automation, the intellectualization and the standardization of the alarm analysis are realized, operation and maintenance personnel can be effectively helped to perform fault diagnosis and problem positioning, and the efficiency and the problem solving capability are improved.)

一种告警场景挖掘方法

技术领域

本发明涉及IT运维和管理(ITOM)技术领域,具体说是一种告警场景挖掘方法。

背景技术

告警分析在运维和管理领域普遍应用且非常重要,通过告警分析可辅助企业的运维人员实时的了解服务器的安全状况,以避免因故障导致的、难以估计的损失。通过告警分析不仅可以了解到软硬件设备的运行状况,还可以在故障发生时快速找到根因,从而及时的进行补救,更好的提高软硬件设备的高可用性。

通常,一种故障重复发生时,总会对应的产生若干个告警,所述若干个告警的出现存在一定规律性,所述若干个告警类型相同或不同均有可能,例如:故障A发生时,可能会出现三个告警,即对应的产生告警1-3,则:只要发现出现了告警1-3,则可推定发生了故障A。通过这一规律,可以将经常一起出现的若干个告警分析并整合为告警模板(挖掘告警模板),告警模板中包括的经常一起出现的若干个告警构成了一种告警场景,每种告警场景通常对应于一种故障。

随着服务器规模的发展扩大,告警数据与日俱增,逐渐形成了海量的告警数据,基于海量的告警数据进行告警分析,已经不能依靠人力处理,企业需要自动化的告警分析解决方案。

公开于该

背景技术

部分的信息仅仅旨在加深对本发明的总体

背景技术

的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。

发明内容

针对现有技术中存在的缺陷,本发明的目的在于提供一种告警场景挖掘方法,采用机器学习技术,对海量的告警数据进行告警分析,识别其中包含的告警场景,并记录为告警模板,实现告警分析的自动化、智能化及标准化,能够有效的帮助运维人员进行故障诊断以及问题定位,提高效率和解决问题的能力。

为达到以上目的,本发明采取的技术方案是:

一种告警场景挖掘方法,其特征在于,包括如下步骤:

获取存储有告警数据的历史记录;

对历史记录先进行聚类处理,再进行告警模板匹配,对同类型的告警数据分配相同的模板id,得到包含有模板id的告警数据记录;

设定一时间窗口;

按时间窗口切分包含有模板id的告警数据记录,得到若干告警数据记录分段;

逐个处理每一个告警数据记录分段,统计每一个模板id在哪些告警数据记录分段中出现过,形成告警数据记录分段集合,采用哈希表记录模板id及告警数据记录分段集合;

计算两两模板id之间的相关性,并构建相关性矩阵。

在上述技术方案的基础上,所述计算两两模板id之间的相关性,并构建相关性矩阵,具体步骤如下:

以两两模板id形成若干模板对,

获取两个模板id对应的哈希表,

从哈希表中获取告警数据记录分段集合,

计算两个告警数据记录分段集合的jaccard相似度,计算公式为

即两个告警数据记录分段集合的jaccard相似度等于两个集合的交集的大小除以并集的大小。

在上述技术方案的基础上,进一步包括如下步骤:基于相关性矩阵构建无环图。

在上述技术方案的基础上,所述基于相关性矩阵构建无环图具体步骤为:

将每一个模板id作为图中的一个顶点,

根据用户配置的相关性阈值,对相关性达到阈值的模板对,认为是有关系的,取模板对中两个模板id对应的顶点,在两个顶点之间添加边,边的权重为1;

基于社区检测算法处理无环图,划分社区。

在上述技术方案的基础上,所述基于社区检测算法处理无环图,划分社区,具体步骤为:

确定所用社区检测算法;

设定社区检测算法中用于确定模块度的目标函数,所述模块度亦称Q值,用来衡量社区划分的好坏;

采用社区检测算法对无环图进行社区划分,使Q值朝着增大的方向进行;

对社区划分结果进行过滤,去掉孤立社区,其余的每个社区均作为一个告警场景。

在上述技术方案的基础上,确定louvain算法为所用社区检测算法。

在上述技术方案的基础上,为了增加可读性,将模板id替换为模板内容,并存储为告警场景记录。

本发明所述的一种告警场景挖掘方法,具有以下有益效果:

采用机器学习技术,对海量的告警数据进行告警分析,识别其中包含的告警场景,并记录为告警模板,实现告警分析的自动化、智能化及标准化,能够有效的帮助运维人员进行故障诊断以及问题定位,提高效率和解决问题的能力。

所述机器学习技术,本发明中选用了社区检测算法,挖掘到的场景数量较少,但准确度较高,场景中的模板之间相关性较强,场景之间不存在交集。

附图说明

本发明有如下附图:

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1本发明所述一种告警场景挖掘方法的实施例一的流程图。

图2本发明所述一种告警场景挖掘方法的实施例二的流程图。

图3基于相关性矩阵构建无环图示例。

图4本发明所述一种告警场景挖掘方法的实施例三的流程图。

具体实施方式

以下结合附图对本发明作进一步详细说明。所述详细说明,为结合本发明的示范性实施例做出的说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

如图1所示,本发明给出了一种告警场景挖掘方法,包括如下步骤:

获取存储有告警数据的历史记录;

例如:历史记录的格式及内容如下表1所示,

表1

告警id 发生时间 告警内容
1 2021-01-01 00:00 主机db01无法ping通
2 2021-01-01 00:01 连接db01上的mysql数据库失败
3 2021-01-01 00:03 主机host1的CPU使用率超过80%
... ... ...
1001 2021-01-03 08:00 主机db02无法ping通
1002 2021-01-03 08:00 连接db02上的mysql数据库失败
1003 2021-01-03 08:01 交易失败率达到10%
1004 2021-01-01 08:02 网上转账服务调用失败
... ... ...
2001 2021-01-04 18:00 交易失败率达到12%
2002 2021-01-04 18:01 网上转账服务调用失败
2003 2021-01-04 18:02 主机host2内存使用率高
... ... ...

历史记录中至少包括告警id、发生时间、告警内容;

对历史记录先进行聚类处理,再进行告警模板匹配处理,对同类型的告警数据分配相同的模板id,得到包含有模板id的告警数据记录;

所述聚类处理可采用现有的任意聚类算法,本发明不涉及对聚类算法的改进,不再详述;

所述模板id用于区分不同类型的告警数据;

进行聚类处理和进行告警模板匹配处理的目的是,将告警内容结构化,方便特征提取,作为可选择的实施方案之一,所述聚类可采用202010216937.8公开的一种基于LCS的Chameleon实时日志聚类方法;

例如:对表1所示示例进行聚类处理、告警模板匹配处理,得到包含有模板id的告警数据记录的格式及内容如下表2所示,

表2

设定一时间窗口;

作为可选择的实施方案之一,所述时间窗口默认为5分钟;

按时间窗口切分包含有模板id的告警数据记录,得到若干告警数据记录分段;切分后,每一段告警数据记录分段中,第一条记录的发生时间,和最后一条记录的发生时间,发生时间的差值小于等于时间窗口的取值;

例如:对表2所示示例按时间窗口切分,得到若干告警数据记录分段如下表3所示,

表3

逐个处理每一个告警数据记录分段,统计每一个模板id在哪些告警数据记录分段中出现过,形成告警数据记录分段集合,采用哈希表记录模板id及告警数据记录分段集合;

例如:对表3所示示例统计,形成告警数据记录分段集合,统计结果如下表4所示,

表4

计算两两模板id之间的相关性,并构建相关性矩阵,具体步骤为:

以两两模板id形成若干模板对,

获取两个模板id对应的哈希表,

从哈希表中获取告警数据记录分段集合,

计算两个告警数据记录分段集合的jaccard相似度,计算公式为

即两个告警数据记录分段集合的jaccard相似度等于两个集合的交集的大小除以并集的大小;

例如:对表4所示示例计算两两模板id之间的相关性,并构建相关性矩阵如下表5所示,

表5

jaccard相似度(Jaccard系数)越高,说明该两两模板id伴随出现的概率越高,即要么该两两模板id都出现,要么该两两模板id都不出现。

在上述技术方案的基础上,如图2所示,进一步包括如下步骤:基于相关性矩阵构建无环图;

所述基于相关性矩阵构建无环图具体步骤为:

将每一个模板id作为图中的一个顶点,

根据用户配置的相关性阈值,对相关性达到阈值的模板对,认为是有关系的,取模板对中两个模板id对应的顶点,在两个顶点之间添加边,边的权重为1;

例如:设用户配置的相关性阈值为0.9,则基于表5所示相关性矩阵构建无环图,如图3所示;

基于社区检测算法处理无环图,划分社区,具体步骤为:

确定所用社区检测算法;例如,确定louvain算法为所用社区检测算法;louvain算法为公知算法,本发明不再详述;

设定社区检测算法中用于确定模块度的目标函数,所述模块度亦称Q值,用来衡量社区划分的好坏;

采用社区检测算法对无环图进行社区划分,使Q值朝着增大的方向进行;

例如:对表5所示示例构建无环图、划分社区,社区划分结果如下表6所示,

表6

社区id 模板id集合
1 1,2
2 3
3 4,5
4 6

如图4所示,对社区划分结果进行过滤,去掉孤立社区,其余的每个社区均作为一个告警场景;

例如:对表6所示示例进行过滤,去掉孤立社区,告警场景结果如下表7所示,

表7

社区id 模板id集合
1 1,2
3 4,5

在上述技术方案的基础上,如图4所示,为了增加可读性,将模板id替换为模板内容,并存储为告警场景记录。

例如:对表7所示示例处理后,告警场景记录如下表8所示,

表8

本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。

13页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:测试调度及日志管理方法、装置、计算机设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!