一种故障场景检测方法及系统
文献发布时间:2024-04-18 19:58:26
技术领域
本发明涉及运维技术领域,具体为一种故障场景检测方法及系统。
背景技术
随着云计算的飞速发展,越来越多的企业和个人用户拥抱云服务,对于云服务提供商来说为了给用户提供稳定的服务,通常会部署大量的监控系统,随之而来的是大量的告警。
现有技术中,对于运维人员来说如何从海量告警中识别真实的故障具有重要意义。通常会采用告警收敛技术对告警进行收敛,如按时间窗口、按告警对象、按地域等对告警进行合并,采用这种方式在故障发生时并不能对运维人员进行及时的提醒,而且仅仅依靠时间窗口也会将一些不相关的告警合并到一起,干扰运维人员的故障定位。
发明内容
本发明的目的在于提供一种故障场景检测方法及系统,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种故障场景检测方法,所述方法包括以下步骤:
故障场景预检,故障场景告警过滤,故障场景合并;
查询所有告警集合,依次构造告警集合中的告警特征向量,集合告警特征包括告警个数,告警种类数,根据所有告警集合的告警特征向量训练告警异常检测模型;
查询所有告警列表,依次遍历告警列表,将当前告警记为主告警,并将发生次数自增1,查询当前主告警发生时前后指定时间间隔共现告警列表,将共现告警按照告警名称去重,得到共现告警集合,依次遍历共现告警集合,将当前共现告警记为次告警,并将对应主告警下该次告警的发生次数自增1,全部遍历结束后计算主告警发生时次告警发生的条件概率。
优选的,故障场景预检的具体操作包括:
获取待检测告警列表,构造当前告警列表的告警特征向量,将告警特征向量输入训练好的告警异常检测模型,若告警异常检测模型的检测结果为疑似故障场景,则生成一个故障场景。
优选的,故障场景告警过滤的具体操作包括:
依次遍历故障场景包含的告警列表,查询当前告警发生时其他告警发生的条件概率满足指定阈值的告警集合,此时当前告警为主告警,其他告警为次告警,若告警集合为空,则查询其他告警发生时当前告警发生的条件概率满足指定阈值的告警集合,此时其他告警为主告警,当前告警为次告警,若告警集合为空,则将当前告警从故障场景告警列表中删除。
优选的,故障场景合并的具体操作包括:
若当前检测到的故障场景之前的最新故障场景状态为未关闭,则判断最新故障场景的创建时间和当前时间的间隔是否小于设定的故障场景合并时间间隔,若小于则计算当前故障场景包含的告警名称和之前的最新故障场景包含的告警名称之间的Jaccard相似度,若相似度大于设定的阈值,则将两个故障场景合并。
一种故障场景检测系统,所述系统由故障场景实时检测模块、告警异常检测模型训练模块以及告警条件概率分析模块组成;
故障场景实时检测模块,用于故障场景预检,故障场景告警过滤,故障场景合并;
告警异常检测模型训练模块,用于查询所有告警集合,依次构造告警集合中的告警特征向量,集合告警特征包括告警个数,告警种类数,根据所有告警集合的告警特征向量训练告警异常检测模型
以及告警条件概率分析模块,用于查询所有告警列表,依次遍历告警列表,将当前告警记为主告警,并将发生次数自增1,查询当前主告警发生时前后指定时间间隔共现告警列表,将共现告警按照告警名称去重,得到共现告警集合,依次遍历共现告警集合,将当前共现告警记为次告警,并将对应主告警下该次告警的发生次数自增1,全部遍历结束后计算主告警发生时次告警发生的条件概率。
优选的,故障场景预检,用于获取待检测告警列表,构造当前告警列表的告警特征向量,将告警特征向量输入训练好的告警异常检测模型,若告警异常检测模型的检测结果为疑似故障场景,则生成一个故障场景。
优选的,故障场景告警过滤,用于依次遍历故障场景包含的告警列表,查询当前告警发生时其他告警发生的条件概率满足指定阈值的告警集合,此时当前告警为主告警,其他告警为次告警,若告警集合为空,则查询其他告警发生时当前告警发生的条件概率满足指定阈值的告警集合,此时其他告警为主告警,当前告警为次告警,若告警集合为空,则将当前告警从故障场景告警列表中删除。
优选的,故障场景合并,用于若当前检测到的故障场景之前的最新故障场景状态为未关闭,则判断最新故障场景的创建时间和当前时间的间隔是否小于设定的故障场景合并时间间隔,若小于则计算当前故障场景包含的告警名称和之前的最新故障场景包含的告警名称之间的Jaccard相似度,若相似度大于设定的阈值,则将两个故障场景合并。
与现有技术相比,本发明的有益效果是:
本发明提出的故障场景检测方法及系统,通过提取告警集合的告警特征向量训练告警异常检测模型能够快速根据告警的异常来识别出可能的故障,并将疑似故障告警合并到一起,然后利用告警发生时其他告警发生的概率,对不相关的告警进行剔除,有助于故障的快速定位。通常故障场景的合并,能够将故障发生时的大量告警有效的合并在一起,避免告警风暴。
附图说明
图1为本发明系统架构图;
图2为本发明故障场景预检流程图;
图3为本发明故障场景告警过滤流程图;
图4为本发明故障场景合并流程图;
图5为本发明告警异常检测模型训练流程图;
图6为本发明告警条件概率计算流程图。
具体实施方式
为了使本发明的目的、技术方案进行清楚、完整地描述,及优点更加清楚明白,以下结合附图对本发明实施例进行进一步详细说明。应当理解,此处所描述的具体实施例是本发明一部分实施例,而不是全部的实施例,仅仅用以解释本发明实施例,并不用于限定本发明实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种技术方案:一种故障场景检测方法及系统,。
如附图1所示为系统的架构图,包含故障场景实时检测模块、告警异常检测模型训练模块、告警条件概率分析模块。
下面结合附图2说明故障场景的预检流程:
获取待检测告警列表,构造当前告警列表的告警特征向量,将告警特征向量输入训练好的告警异常检测模型,若告警异常检测模型的检测结果为疑似故障场景,则生成一个故障场景。其中待检测告警列表为采用某种告警收敛方式收敛后的告警列表,具体的可以是按时间窗口收敛后的告警列表,如将5分钟之内的告警合并到一起得到的告警列表。也可以是按告警对象收敛后的告警列表,如将告警对象同属于一台虚拟机的告警合并到一起得到的告警列表。告警特征向量可以是告警列表包含的告警的个数以及告警的种类等。
下面结合附图3说明故障场景告警过滤流程:
依次遍历故障场景包含的告警列表,查询当前告警发生时其他告警发生的条件概率满足指定阈值的告警集合,此时当前告警为主告警,其他告警为次告警,若告警集合为空,则查询其他告警发生时当前告警发生的条件概率满足指定阈值的告警集合,此时其他告警为主告警,当前告警为次告警,若告警集合为空,则将当前告警从故障场景告警列表中删除。
下面结合附图4说明故障场景合并流程:
若当前检测到的故障场景之前的最新故障场景状态为未关闭,则判断最新故障场景的创建时间和当前时间的间隔是否小于设定的故障场景合并时间间隔,若小于则计算当前故障场景包含的告警名称和之前的最新故障场景包含的告警名称之间的Jaccard相似度,若相似度大于设定的阈值,则将两个故障场景合并。
下面结合附图5说明告警异常检测模型训练流程:
查询所有告警集合,依次构造告警集合中的告警特征向量,集合告警特征包括告警个数,告警种类数等,然后根据所有告警集合的告警特征向量训练告警异常检测模型。告警异常检测模型可以采用孤立森林算法、K近邻算法、单分类支持向量机等机器学习算法。
下面结合附图6说明告警条件概率计算流程:
表格1告警列表
查询所有告警列表,依次遍历告警列表,将当前告警记为主告警,并将其发生次数自增1,查询当前主告警发生时前后指定时间间隔共现告警列表,将共现告警按照告警名称去重,得到共现告警集合,依次遍历共现告警集合,将当前共现告警记为次告警,并将对应主告警下该次告警的发生次数自增1,全部遍历结束后计算主告警发生时次告警发生的条件概率。
若告警时间间隔为5分钟,则对于表格1所示的告警列表计算到的告警条件概率如表格2所示。条件概率可以利用关系型数据库存储也可以利用图数据库存储。
表格2告警条件概率列表
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
- 一种多状态多阶段任务系统的故障场景树建模方法
- 一种用于智能叉车臂故障的检测系统、检测方法及其处理方法
- 一种基于故障树的嵌入式系统硬件故障检测及处理方法
- 面向数据稀缺场景的综合供能服务站油气回收系统故障检测方法
- 一种异常检测模型训练方法、故障场景定位方法及装置