故障根因分析方法、装置、电子设备和存储介质转让专利

申请号 : CN202210353663.6

文献号 : CN114430365B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 易存道

申请人 : 北京宝兰德软件股份有限公司

摘要 :

本发明提供一种故障根因分析方法、装置、电子设备和存储介质,其中方法包括:基于任一网元的运行参数的异常检测结果,确定该网元的故障子图;基于各网元的故障子图之间的故障传播关系,生成故障知识图谱;对故障知识图谱进行根因分析,得到故障知识图谱中各网元之间的根因关系,对故障知识图谱进行领域知识标注,得到故障知识图谱中各网元的领域知识库;基于故障知识图谱中各网元之间的根因关系以及各网元的领域知识库,确定故障解决方案,克服了传统方案中需耗费大量时间经济成本,关联关系不准确以及无法关联故障解决方案的缺陷,保证了各网元之间的根因关系的准确性,实现了根因关系与领域知识库的联动,以及故障解决方案的自适配。

权利要求 :

1.一种故障根因分析方法,其特征在于,包括:

基于任一网元的运行参数的异常检测结果,确定所述任一网元的故障子图;

基于各网元的故障子图之间的故障传播关系,生成故障知识图谱,所述故障传播关系用于表征对应网元的故障之间相似程度;

对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库,所述领域知识标注包括故障类型标注、故障名称标注、故障诊断标注、故障解决方案标注中的至少一种;

基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案。

2.根据权利要求1所述的故障根因分析方法,其特征在于,所述对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,包括:基于历史故障数据,对所述故障知识图谱中各网元的异常信息进行根因分析,得到所述故障知识图谱中各网元之间的初始根因关系;

基于预设推理方式,对所述初始根因关系进行编辑修正,得到所述故障知识图谱中各网元之间的根因关系;

所述预设推理方式包括专家经验推理、数据库知识推理、调用链推理、领域知识推理中的至少一种。

3.根据权利要求2所述的故障根因分析方法,其特征在于,所述基于数据库知识推理,对所述初始根因关系进行编辑修正,得到所述故障知识图谱中各网元之间的根因关系,包括:确定所述故障知识图谱中各网元的网元实体与其他网元的网元实体之间的关联关系,所述关联关系包括直接关系和间接关系;

若所述关联关系为空,则对对应网元的网元实体之间的初始根因关系进行裁剪,得到所述故障知识图谱中各网元之间的根因关系。

4.根据权利要求2所述的故障根因分析方法,其特征在于,所述基于调用链推理,对所述初始根因关系进行编辑修正,得到所述故障知识图谱中各网元之间的根因关系,包括:确定所述故障知识图谱中各网元的网元实体下的各网元实例之间的调用关系和初始根因关系,所述调用关系包括直接调用关系和间接调用关系;

若所述各网元实例之间的调用关系和初始根因关系的指向相同,则对所述各网元实例之间的初始根因关系进行裁剪,得到所述故障知识图谱中各网元之间的根因关系。

5.根据权利要求2所述的故障根因分析方法,其特征在于,所述基于领域知识推理,对所述初始根因关系进行编辑修正,得到所述故障知识图谱中各网元之间的根因关系,包括:基于所述故障知识图谱,以及所述领域知识库中的已知故障,确定所述故障知识图谱中各网元的故障子图与所述领域知识库中的已知故障之间的相似度;

基于所述相似度,对所述各网元之间的初始根因关系进行优化,得到所述故障知识图谱中各网元之间的根因关系。

6.根据权利要求1至5中任一项所述的故障根因分析方法,其特征在于,所述基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案,包括:对所述故障知识图谱中各网元之间的根因关系,以及对应网元的领域知识库中已标注的领域知识进行匹配;

若匹配成功,则输出故障解决方案。

7.根据权利要求6所述的故障根因分析方法,其特征在于,所述对所述故障知识图谱中各网元之间的根因关系,以及对应网元的领域知识库中已标注的领域知识进行匹配,之后还包括:若匹配失败,则基于所述故障知识图谱中各网元之间的根因关系,生成对应的领域知识并存储于所述对应网元的领域知识库。

8.根据权利要求1至5中任一项所述的故障根因分析方法,其特征在于,所述对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库,包括:基于历史故障知识图谱,对所述故障知识图谱进行故障类型标注、故障名称标注、故障诊断标注、故障解决方案标注中的至少一种,得到所述故障知识图谱中各网元的领域知识库;

所述历史故障知识图谱基于历史故障数据确定,所述历史故障数据包括历史运行参数和/或历史故障子图。

9.一种故障根因分析装置,其特征在于,包括:

故障子图确定单元,用于基于任一网元的运行参数的异常检测结果,确定所述任一网元的故障子图;

知识图谱生成单元,用于基于各网元的故障子图之间的故障传播关系,生成故障知识图谱,所述故障传播关系用于表征对应网元的故障之间相似程度;

分析标注单元,用于对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库,所述领域知识标注包括故障类型标注、故障名称标注、故障诊断标注、故障解决方案标注中的至少一种;

解决方案确定单元,用于基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案。

10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述的故障根因分析方法。

11.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的故障根因分析方法。

说明书 :

故障根因分析方法、装置、电子设备和存储介质

技术领域

[0001] 本发明涉及计算机技术领域,尤其涉及一种故障根因分析方法、装置、电子设备和存储介质。

背景技术

[0002] 随着云平台、物联网等基础设施的发展,计算机软件在分布式、云环境下的部署愈加复杂,而错综复杂的部署环境无疑会导致运维工作的效率十分低下,因此,如何提升运维工作效率成为了行业内亟待解决的问题。
[0003] 目前,运维行业主要的问题定位方式有以下两种:其一是依靠运维人员的专家经验判断故障根因关系,但是,依靠人工进行故障根因分析的成本高昂,并且,无法全天候不间断提取,易误报漏报,时效性较低;此外,人工经验参差不齐,易导致故障现象所描述的异常之间的关联程度并不高;其二是通过人工智能算法分析异常之间的关联关系,再结合人工经验进行判断,此种方式需要人工标注,工作量大,准确性无法得到较好的保障;除此之外,还存在关联关系不区分故障场景,以及解决方案无法进行自动关联等问题。

发明内容

[0004] 本发明提供一种故障根因分析方法、装置、电子设备和存储介质,用以解决现有技术中故障定位方法需耗费大量时间经济成本,关联关系不准确以及无法关联故障解决方案的缺陷。
[0005] 本发明提供一种故障根因分析方法,包括:
[0006] 基于任一网元的运行参数的异常检测结果,确定所述任一网元的故障子图;
[0007] 基于各网元的故障子图之间的故障传播关系,生成故障知识图谱;
[0008] 对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库;
[0009] 基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案。
[0010] 根据本发明提供的一种故障根因分析方法,所述对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,包括:
[0011] 基于历史故障数据,对所述故障知识图谱中各网元的异常信息进行根因分析,得到所述故障知识图谱中各网元之间的初始根因关系;
[0012] 基于预设推理方式,对所述初始根因关系进行编辑修正,得到所述故障知识图谱中各网元之间的根因关系;
[0013] 所述预设推理方式包括专家经验推理、数据库知识推理、调用链推理、领域知识推理中的至少一种。
[0014] 根据本发明提供的一种故障根因分析方法,所述基于数据库知识推理,对所述初始根因关系进行编辑修正,得到所述故障知识图谱中各网元之间的根因关系,包括:
[0015] 确定所述故障知识图谱中各网元的网元实体与其他网元的网元实体之间的关联关系,所述关联关系包括直接关系和间接关系;
[0016] 若所述关联关系为空,则对对应网元的网元实体之间的初始根因关系进行裁剪,得到所述故障知识图谱中各网元之间的根因关系。
[0017] 根据本发明提供的一种故障根因分析方法,所述基于调用链推理,对所述初始根因关系进行编辑修正,得到所述故障知识图谱中各网元之间的根因关系,包括:
[0018] 确定所述故障知识图谱中各网元的网元实体下的各网元实例之间的调用关系和初始根因关系,所述调用关系包括直接调用关系和间接调用关系;
[0019] 若所述各网元实例之间的调用关系和初始根因关系的指向相同,则对所述各网元实例之间的初始根因关系进行裁剪,得到所述故障知识图谱中各网元之间的根因关系。
[0020] 根据本发明提供的一种故障根因分析方法,所述基于领域知识推理,对所述初始根因关系进行编辑修正,得到所述故障知识图谱中各网元之间的根因关系,包括:
[0021] 基于所述故障知识图谱,以及所述领域知识库中的已知故障,确定所述故障知识图谱中各网元的故障子图与所述领域知识库中的已知故障之间的相似度;
[0022] 基于所述相似度,对所述各网元之间的初始根因关系进行优化,得到所述故障知识图谱中各网元之间的根因关系。
[0023] 根据本发明提供的一种故障根因分析方法,所述基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案,包括:
[0024] 对所述故障知识图谱中各网元之间的根因关系,以及对应网元的领域知识库中已标注的领域知识进行匹配;
[0025] 若匹配成功,则输出故障解决方案。
[0026] 根据本发明提供的一种故障根因分析方法,所述对所述故障知识图谱中各网元之间的根因关系,以及对应网元的领域知识库中已标注的领域知识进行匹配,之后还包括:
[0027] 若匹配失败,则基于所述故障知识图谱中各网元之间的根因关系,生成对应的领域知识并存储于所述对应网元的领域知识库。
[0028] 根据本发明提供的一种故障根因分析方法,所述对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库,包括:
[0029] 基于历史故障知识图谱,对所述故障知识图谱进行故障类型标注、故障名称标注、故障诊断标注、故障解决方案标注中的至少一种,得到所述故障知识图谱中各网元的领域知识库;
[0030] 所述历史故障知识图谱基于历史故障数据确定,所述历史故障数据包括历史运行参数和/或历史故障子图。
[0031] 本发明还提供一种故障根因分析装置,包括:
[0032] 故障子图确定单元,用于基于任一网元的运行参数的异常检测结果,确定所述任一网元的故障子图;
[0033] 知识图谱生成单元,用于基于各网元的故障子图之间的故障传播关系,生成故障知识图谱;
[0034] 分析标注单元,用于对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库;
[0035] 解决方案确定单元,用于基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案。
[0036] 本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的故障根因分析方法。
[0037] 本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的故障根因分析方法。
[0038] 本发明提供的故障根因分析方法、装置、电子设备和存储介质,根据各网元的故障子图之间的故障传播关系,生成故障知识图谱;对故障知识图谱进行根因分析和领域知识标注,分别得到故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库;然后根据故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案,完全克服了传统方案中需耗费大量时间经济成本,关联关系不准确,以及无法区分故障场景和无法关联故障解决方案的缺陷,在集聚了同一类型故障的故障子图形成的故障知识图谱的基础上,通过根因分析保证了各网元之间的根因关系的准确性,实现了根因关系与领域知识库的联动,以及故障解决方案的自适配。

附图说明

[0039] 为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0040] 图1是本发明提供的故障根因分析方法的流程示意图;
[0041] 图2是本发明提供的因果推理过程的示意图;
[0042] 图3是本发明提供的基于数据库推理方式的推理过程的示例图;
[0043] 图4是本发明提供的基于调用链推理方式的推理过程的示例图;
[0044] 图5是本发明提供的故障解决方案的确定过程的示意图;
[0045] 图6是本发明提供的故障根因分析装置的结构示意图;
[0046] 图7是本发明提供的电子设备的结构示意图。

具体实施方式

[0047] 为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048] 目前,运维行业进行问题定位的方式主要有以下两种方式:
[0049] 其一,依靠运维人员的专家经验进行问题定位,此种方式主要由人工分析故障原因,通过人工经验判断故障之间的根因关系,将一组有根因关系的异常定为一种故障现象。
[0050] 但是,依赖于专家经验的问题定位方式的成本高昂,并且还无法全天候不间断提取,易误报漏报,时效性较低;另外,故障众多时,无法准确的按照时间窗口提取异常,并将其转换为故障知识,从而导致故障知识数据的取样不足。此外,人工经验的参差不齐还会导致故障现象所描述的异常之间的关联程度不高。
[0051] 其二,通过AI(Artificial Intelligence,人工智能)算法进行分析,并结合人工经验进行判断的方式,AI算法可以是FP‑Growth、皮尔逊等;此种方式下,首先通过AI算法分析异常之间的关联关系,然后,通过采用人工标注的方式对上一步得到的分析结果进行修正,以提高AI分析所得的分析结果的准确性。
[0052] 然而,该种方法需要大量的人工标注,工作量大,并且,最终结果的准确性完全取决于人工标注,准确性无法得到较好的保障;持此之外,上述方法还存在关联关系不区分故障场景,以及解决方案无法进行自动关联等问题。
[0053] 针对上述情况,本发明提供一种故障根因分析方法,旨在以故障知识图谱为基准进行根因分析,结合根因分析结果和已标注的领域知识提供故障解决方案,实现根因关系的准确分析以及与领域知识库的联动,图1是本发明提供的故障根因分析方法的流程示意图,如图1所示,该方法包括:
[0054] 步骤110,基于任一网元的运行参数的异常检测结果,确定该网元的故障子图;
[0055] 具体地,在进行故障根因分析之前,首先需要确定故障子图,而各网元的故障子图是基于对应网元的运行参数确定的,因而,上述确定故障子图的过程实际上可以是,首先确定任一网元的运行参数,此处的运行参数包括时序指标数据、告警数据、调用链数据、日志数据中的至少一种;随即,对该网元的各运行参数进行异常检测,得到各运行参数的异常检测结果;随后,可据此异常检测结果进行故障定位,即若异常检测结果表明该网元产生的异常点的数目超过预设阈值,且其持续时间超过预设时间,则判定该网元为一个故障点,此处的预设阈值和预设时间可根据实际情况预先设定;此后,即可根据定位的故障形成该网元的故障子图。
[0056] 需要说明的是,此处的故障子图后续可进一步通过专家进行人为标注,因而,其也可以称之为待标注的领域知识。
[0057] 步骤120,基于各网元的故障子图之间的故障传播关系,生成故障知识图谱;
[0058] 具体地,经过步骤110得到某一具体网元的故障子图后,重复步骤110,即可得到各网元的故障子图,在此之后,即可执行步骤120,根据各网元的故障子图之间的故障传播关系,生成故障知识图谱,具体过程包括如下步骤:
[0059] 首先,判断以网元为中心的各个故障子图之间是否存在故障传播关系,此处的故障传播关系用于表征若故障子图之间存在故障传播关系;需要说明的是,上述过程可以通过频繁子图的相似度分析算法实现,即可以采用频繁子图的相似度分析算法判断各个故障子图之间是否存在故障传播关系,此处的频繁子图的相似度分析算法可以是gSpan,可以是其他相关算法,例如,CloseGraph、FFSM等;
[0060] 随即,由于故障子图之间的故障传播关系能够表征对应网元的故障之间相似程度,即故障子图之间存在故障传播关系,则表明对应网元的故障之间相似度高,亦可以理解为对应网元的故障属于同一类型故障的概率越高;反之,故障子图之间不存在故障传播关系,则表明对应网元的故障之间相似度低,即对应网元的故障越不可能属于同一类型故障;
[0061] 因此,可以在各网元的故障子图之间存在故障传播关系的情况下,合并存在故障传播关系的故障子图,以生成故障知识图谱,该故障知识图谱中记载了发生异常的网元的各种异常信息,例如,异常指标、异常事件、异常类型、预测故障发生事件等。
[0062] 相应地,在各网元的故障子图之间不存在故障传播关系的情况下,无需合并不存在故障传播关系的故障子图。
[0063] 本发明实施例中,对存在故障传播关系的故障子图进行合并,不仅可以减少了故障子图的数目,还能够使得属于同一类型故障的故障子图得以集聚形成故障知识图谱,为后续基于此故障知识图谱的根因分析过程提供了关键性的助力。
[0064] 步骤130,对故障知识图谱进行根因分析,得到故障知识图谱中各网元之间的根因关系,对故障知识图谱进行领域知识标注,得到故障知识图谱中各网元的领域知识库;
[0065] 具体地,经过步骤120得到故障知识图谱后,即可对故障知识图谱进行根因分析和领域知识标注,分别得到故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库。
[0066] 此处,对故障知识图谱进行根因分析的过程可以借助相关算法实现,例如,FP‑Growth、皮尔逊等,即通过算法分析故障知识图谱中各网元之间的根因关系,此时,考虑到算法分析所得的分析结果中可能存在不合理的情况,因而,还可以对分析结果进行因果推理,以更正其中存在的不合理情况,即可以通过预先设定的推理方式进行因果推理,以对分析结果进行编辑修正。
[0067] 需要说明的是,此处的预先设定的推理方式可以是专家经验推理、数据库知识推理、调用链推理、领域知识推理中的一种或多种。
[0068] 而对故障知识图谱进行领域知识标注的过程需倚靠历史故障知识图谱完成,即以历史故障知识图谱为基准,对故障知识图谱中各网元进行领域知识标注,具体可以是故障类型标注、故障名称标注、故障诊断标注、故障解决方案标注中的一种或多种,已标注的领域知识形成领域知识库,即最终得到故障知识图谱中各网元的领域知识库。
[0069] 需要说明的是,此处的历史故障知识图谱是与故障知识图谱的图谱相似度最高的图谱,因此,其也可以称之为历史最相似图谱,历史最相似图谱是在历史故障数据的基础上,运用图谱相似度算法计算得到的,历史故障数据包括历史运行参数和/或历史故障子图,图谱相似度算法可以是node2vec算法。
[0070] 步骤140,基于故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案。
[0071] 具体地,经过上述步骤得到故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库后,即可执行步骤140,据此两者确定故障解决方案,具体过程可以是,将故障知识图谱中各网元之间的根因关系与对应网元的领域知识库进行匹配,这一过程可以通过图谱相似度算法实现;若对应网元的领域知识库中存在与根因关系匹配的已标注的领域知识,则判定匹配成功,在此情况下,可根据匹配的已标注的领域知识确定故障解决方案。
[0072] 相应地,若对应网元的领域知识库中已标注的领域知识均未能与根因关系匹配,即对应网元的领域知识库中不存在与根因关系匹配的已标注的领域知识,则判定匹配失败,此种情况下,可根据故障知识图谱中各网元之间的根因关系,生成与之对应的领域知识,并将其存储于对应网元的领域知识库中,以便后续与领域知识库的联动。
[0073] 本发明提供的故障根因分析方法,根据各网元的故障子图之间的故障传播关系,生成故障知识图谱;对故障知识图谱进行根因分析和领域知识标注,分别得到故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库;然后根据故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案,完全克服了传统方案中需耗费大量时间经济成本,关联关系不准确,以及无法区分故障场景和无法关联故障解决方案的缺陷,在集聚了同一类型故障的故障子图形成的故障知识图谱的基础上,通过根因分析保证了各网元之间的根因关系的准确性,实现了根因关系与领域知识库的联动,以及故障解决方案的自适配。
[0074] 基于上述实施例,步骤130中,对故障知识图谱进行根因分析,得到故障知识图谱中各网元之间的根因关系,包括:
[0075] 基于历史故障数据,对故障知识图谱中各网元的异常信息进行根因分析,得到故障知识图谱中各网元之间的初始根因关系;
[0076] 基于预设推理方式,对初始根因关系进行编辑修正,得到故障知识图谱中各网元之间的根因关系;
[0077] 预设推理方式包括专家经验推理、数据库知识推理、调用链推理、领域知识推理中的至少一种。
[0078] 具体地,步骤130中,对故障知识图谱进行根因分析,得到故障知识图谱中各网元之间的根因关系的过程,具体可以包括如下步骤:
[0079] 首先,对故障知识图谱中各网元之间的根因关系进行分析,这一过程需要借助相关算法以及历史故障数据完成,具体可以是利用算法和历史故障数据,分析故障知识图谱中各网元的异常信息之间的相互导致关系,以得到故障知识图谱中各网元之间的根因关系;此处的相互导致关系包括故障知识图谱中业务系统内部的关联关系、业务系统之间的关联关系以及业务系统与网络设备之间的关联关系,最终得到各网元之间的根因关系;历史故障数据则包括历史运行参数和/或历史故障子图;各网元的异常信息包括异常指标、异常事件、异常类型、预测故障发生事件中的一种或多种。
[0080] 需要说明的是,由于通过算法分析所得的根因关系中可能存在不合理的情况,因此,还需进行进一步地的编辑修正,因而,可以将此时得到的根因关系称之为初始根因关系,即对故障知识图谱中各网元的异常信息之间的相互导致关系进行分析,从而得到故障知识图谱中各网元之间的初始根因关系。
[0081] 随后,即可通过因果推理对此初始根因关系进行更正,从而得到故障知识图谱中各网元之间的根因关系,具体过程可以是,通过预先设定的推理方式,即预设推理方式,对故障知识图谱中各网元之间的初始根因关系进行编辑修正,以更正其中存在的不合理情况,从而提升各网元之间的根因关系的准确度,以及使其更加合理规范和明朗化。
[0082] 此处,预设推理方式可以是专家经验推理、数据库知识推理、调用链推理、领域知识推理中的一种或多种,而作为优选,本发明实施例中在专家经验推理的基础上,结合数据库推理、调用链推理以及领域知识推理,从四个不同的层面对各网元之间的初始根因关系进行编辑修正,图2是本发明提供的因果推理过程的示意图,如图2所示,数据库推理、调用链推理以及领域知识推理三者之间是并行关系,并且,均与专家经验推理是串行关系,即专家经验推理的优先级最高,其他三者优先级等同。
[0083] 而专家经验推理实际上是业务领域专家在产品端,通过页面对故障知识图谱中各网元之间的初始根因关系进行编辑和修正,专家修正过程中使用的规则将作为当前故障的专家规则存在,在后续过程中,若当前故障再次发生,则会直接展示专家上次标记的结果。
[0084] 基于上述实施例,步骤130中,基于数据库知识推理,对初始根因关系进行编辑修正,得到故障知识图谱中各网元之间的根因关系,包括:
[0085] 确定故障知识图谱中各网元的网元实体与其他网元的网元实体之间的关联关系,关联关系包括直接关系和间接关系;
[0086] 若关联关系为空,则对对应网元的网元实体之间的初始根因关系进行裁剪,得到故障知识图谱中各网元之间的根因关系。
[0087] 具体地,预设推理方式中的数据库推理亦可以称之为AMDB(Administrators Management Database,配置管理数据库)推理,AMDB是一个逻辑数据库,其中包含了配置项全生命周期的信息以及配置项之间的关系,例如,物理关系、实时通信关系、非实时通信关系、依赖关系等;并且,AMDB中还存储有管理企业IT(Internet Technology,互联网技术)架构中设备的各种配置信息,其与所有服务支持以及服务交付流程紧密相联,在支持此类流程的正常运转,以及发挥各种配置信息的价值的同时,也依赖于相关流程以保证数据的准确性。
[0088] AMDB推理主要针对故障知识图谱中两个网元实体之间既不存在直接关系,也不存在间接关系的情况,因而,步骤130中,得到故障知识图谱中各网元之间的初始根因关系后,应用AMDB推理,对初始根因关系进行编辑修正的过程,首先需要确定故障知识图谱中每一网元的网元实体与其他网元的网元实体之间的关联关系,此处的关联关系包括直接关系和间接关系,即判断故障知识图谱中各网元的网元实体与其他网元的网元实体之间是否存在直接关系,以及间接关系。
[0089] 进一步地,在任意两个网元的网元实体之间不存在关联关系(既不存在直接关系也不存在间接关系)的情况下,即关联关系为空的情况下,对这两个网元的网元实体之间的初始根因关系中的不合理根因关系进行裁剪,重复上述过程,对故障知识图谱中每一网元的网元实体与其他网元的网元实体之间的不合理根因关系进行编辑修正,从而得到故障知识图谱中各网元之间的根因关系。
[0090] 下面以具体实例为基础,对上述过程进行说明:
[0091] 图3是本发明提供的基于数据库推理方式的推理过程的示例图,如图3所示,主机C与实例A之间并不存在直接关系,此种情况下,若算法分析得出“主机C进程不唯一,导致实例A的GC次数异常”,则表明此两者之间存在不合理根因关系,需要进行裁剪。
[0092] 本发明实施例提供的方法,通过数据库推理,对故障知识图谱中各网元的网元实体与其他网元的网元实体之间的初始根因关系进行编辑修正,剪除了其中存在的不合理根因关系,在保证数据准确性的同时,提升了故障知识图谱中各网元之间的根因关系的准确度。
[0093] 基于上述实施例,步骤130中,基于调用链推理,对初始根因关系进行编辑修正,得到故障知识图谱中各网元之间的根因关系,包括:
[0094] 确定故障知识图谱中各网元的网元实体下的各网元实例之间的调用关系和初始根因关系,调用关系包括直接调用关系和间接调用关系;
[0095] 若各网元实例之间的调用关系和初始根因关系的指向相同,则对各网元实例之间的初始根因关系进行裁剪,得到故障知识图谱中各网元之间的根因关系。
[0096] 具体地,由于上述AMDB推理针对的是不同类型网元,即其仅考虑了的不同类型网元的网元实体之间的调用关系,例如,数据库、实例、主机、应用以及业务系统之间的调用关系,而并未涉及系统中实例与实例之间的调用关系,又由于调用链能够分析实例与实例之间的调用关系,因此,本发明实施例中,还可以通过调用链推理,对故障知识图谱中各网元之间的初始根因关系进行编辑修正,具体过程包括如下步骤:
[0097] 首先,确定故障知识图谱中各网元的网元实体下的各网元实例之间的调用关系,此处的调用关系亦可称之为调用指向关系,包括直接调用关系和间接调用关系;由于调用链推理考虑的是调用指向关系和初始根因关系之间的合理性,因而,除确定各网元的网元实体下的各网元实例之间的调用关系的基础上,还需确定各网元的网元实体下的各网元实例之间的初始根因关系;
[0098] 随即,判断各网元的网元实体下的各网元实例之间的调用关系与初始根因关系的指向异同,若此两者的指向相同,则表明此两者之间存在不合理根因关系,需要进行裁剪,即若各网元实例之间的调用关系和初始根因关系的指向相同,则对各网元实例之间的初始根因关系中的不合理根因关系进行裁剪,从而得到故障知识图谱中各网元之间的根因关系。
[0099] 下面以具体实例为基础,对上述过程进行说明:
[0100] 图4是本发明提供的基于调用链推理方式的推理过程的示例图,如图4所示,实例A与实例C之间的调用关系为“实例A调用实例B,再调用实例C”,此时,若算法分析得出“实例A响应超时,导致实例C响应超时异常”,即调用关系和初始根因关系的指向相同,则表明实例A与实例C之间存在不合理根因关系,需要进行裁剪。
[0101] 相应地,若各网元的网元实体下的各网元实例之间的调用关系与初始根因关系的指向相反,表明此时的初始根因关系是合理的,则无需进行裁剪。
[0102] 基于上述实施例,步骤130中,基于领域知识推理,对初始根因关系进行编辑修正,得到故障知识图谱中各网元之间的根因关系,包括:
[0103] 基于故障知识图谱,以及领域知识库中的已知故障,确定故障知识图谱中各网元的故障子图与所述领域知识库中的已知故障之间的相似度;
[0104] 基于相似度,对各网元之间的初始根因关系进行优化,得到故障知识图谱中各网元之间的根因关系。
[0105] 具体地,步骤130中,应用领域知识推理,对故障知识图谱中各网元之间的初始根因关系进行编辑修正,以得到故障知识图谱中各网元之间的根因关系的过程,具体包括如下步骤:
[0106] 首先,以故障知识图谱,以及领域知识标注所得的各网元的领域知识库为基准,计算故障知识图谱中各网元的故障子图与对应网元的领域知识库中的已知故障之间的相似度,这一过程可以通过相似度分析算法实现,即利用相似度分析算法计算此相似度;
[0107] 需要说明的是,此处的相似度分析算法包括图谱相似度算法和余弦相似度算法,而图谱相似度算法可以是node2vec算法,具体在应用时,采用图谱相似度算法对故障知识图谱进行向量化,然后通过余弦相似度算法计算各网元的故障子图与对应网元的领域知识库中的已知故障之间的相似度。
[0108] 随即,可基于此相似度,判断对应网元的网元实体是否发生了特异性故障,例如,内存溢出,并根据判断结果进行故障定位和规则优化,即对故障知识图谱中各网元之间的初始根因关系进行优化,从而得到故障知识图谱中各网元之间的根因关系。
[0109] 基于上述实施例,步骤140包括:
[0110] 对故障知识图谱中各网元之间的根因关系,以及对应网元的领域知识库中已标注的领域知识进行匹配;
[0111] 若匹配成功,则输出故障解决方案。
[0112] 考虑到对故障知识图谱进行领域知识标注所得的各网元的领域知识库中,可能已囊括了当前故障的故障解决方案,因而,在得到故障知识图谱中各网元之间的根因关系的基础上,即可与各网元的领域知识库进行联动,以确定当前故障的故障解决方案,具体过程包括如下步骤:
[0113] 图5是本发明提供的故障解决方案的确定过程的示意图,如图5所示,首先,将故障知识图谱中各网元之间的根因关系和领域知识库进行匹配,这一过程可以借助图谱相似度算法完成,即通过图谱相似度算法,对故障知识图谱中各网元之间的根因关系,和对应网元的领域知识库中经过领域知识标注后形成的已标注的领域知识进行匹配。
[0114] 进一步地,若匹配成功,即领域知识库中存在与对应网元之间的根因关系匹配的已标注的领域知识,则可以直接输出故障解决方案。
[0115] 本发明实施例提供的方法,对故障知识图谱中各网元之间的根因关系,以及对应网元的领域知识库中已标注的领域知识进行匹配,在匹配成功的情况下,可直接得到故障解决方案,实现了根因分析结果与领域知识库的联动,以及故障解决方案的自适配。
[0116] 基于上述实施例,步骤140中,对故障知识图谱中各网元之间的根因关系,以及对应网元的领域知识库中已标注的领域知识进行匹配,之后还包括:
[0117] 若匹配失败,则基于故障知识图谱中各网元之间的根因关系,生成对应的领域知识并存储于所述对应网元的领域知识库。
[0118] 具体地,经过上述步骤可以确定,在各网元之间的根因关系与对应网元的领域知识库中已标注的领域知识匹配成功的情况下,可直接输出故障解决方案;相应地,若匹配失败,即对应网元的领域知识库中已标注的领域知识均未能与根因关系匹配,亦可以理解为,对应网元的领域知识库中不存在与根因关系匹配的已标注的领域知识,参见图5可知,此时可根据根因分析所得的故障知识图谱中各网元之间的根因关系,生成与之对应的领域知识,并将其存储于对应网元的领域知识库中,以便后续与领域知识库的联动。
[0119] 本发明实施例提供的方法,在故障知识图谱中各网元之间的根因关系与对应网元的领域知识库未能匹配成功的情况下,可适应性的根据各网元之间的根因关系生成对应的领域领域知识,并存储于对应网元的领域知识库中,为后续过程中故障解决方案的确定提供了强有力的助益。
[0120] 基于上述实施例,步骤130中,对故障知识图谱进行领域知识标注,得到故障知识图谱中各网元的领域知识库,包括:
[0121] 基于历史故障知识图谱,对故障知识图谱进行故障类型标注、故障名称标注、故障诊断标注、故障解决方案标注中的至少一种,得到故障知识图谱中各网元的领域知识库;
[0122] 历史故障知识图谱基于历史故障数据确定,历史故障数据包括历史运行参数和/或历史故障子图。
[0123] 具体地,步骤130中,对故障知识图谱进行领域知识标注,以得到故障知识图谱中各网元的领域知识库的过程,可借助通过图谱相似度算法得到的历史最相似图谱,即历史故障知识图谱完成,具体过程可以是,以历史故障知识图谱为基准,对故障知识图谱中各网元进行领域知识标注,具体可以是故障类型标注、故障名称标注、故障诊断标注、故障解决方案标注中的一种或多种,已标注的领域知识形成领域知识库,最终得到故障知识图谱中各网元的领域知识库。
[0124] 需要说明的是,此处的历史故障知识图谱是基于历史故障数据确定的,即是在历史故障数据的基础上,利用图谱相似度算法得到的,因而,其也可以称之为历史最相似图谱;而历史故障数据包括历史运行参数和/或历史故障子图,其中,历史故障子图是根据历史运行参数的异常检测结果确定的,历史运行参数包括历史时序指标数据、历史告警数据、历史调用链数据、历史日志数据中的一种或多种。
[0125] 本发明提供的故障根因分析方法,其总体流程包括如下步骤:
[0126] 首先,基于任一网元的运行参数的异常检测结果,确定该网元的故障子图,并基于各网元的故障子图之间的故障传播关系,生成故障知识图谱;
[0127] 随即,基于历史故障数据,对故障知识图谱中各网元的异常信息进行根因分析,得到故障知识图谱中各网元之间的初始根因关系;
[0128] 随后,确定故障知识图谱中各网元的网元实体与其他网元的网元实体之间的关联关系,关联关系包括直接关系和间接关系;
[0129] 若关联关系为空,则对对应网元的网元实体之间的初始根因关系进行裁剪,得到故障知识图谱中各网元之间的根因关系;
[0130] 确定故障知识图谱中各网元的网元实体下的各网元实例之间的调用关系和初始根因关系,调用关系包括直接调用关系和间接调用关系;
[0131] 若各网元实例之间的调用关系和初始根因关系的指向相同,则对各网元实例之间的初始根因关系进行裁剪,得到故障知识图谱中各网元之间的根因关系;
[0132] 基于故障知识图谱,以及领域知识库中的已知故障,确定故障知识图谱中各网元的故障子图与所述领域知识库中的已知故障之间的相似度;
[0133] 基于相似度,对各网元之间的初始根因关系进行优化,得到故障知识图谱中各网元之间的根因关系;
[0134] 此后,基于历史故障知识图谱,对故障知识图谱进行故障类型标注、故障名称标注、故障诊断标注、故障解决方案标注中的至少一种,得到故障知识图谱中各网元的领域知识库;历史故障知识图谱基于历史故障数据确定,历史故障数据包括历史运行参数和/或历史故障子图;
[0135] 最后,对故障知识图谱中各网元之间的根因关系,以及对应网元的领域知识库中已标注的领域知识进行匹配;
[0136] 若匹配成功,则输出故障解决方案;
[0137] 若匹配失败,则基于故障知识图谱中各网元之间的根因关系,生成对应的领域知识并存储于所述对应网元的领域知识库。
[0138] 本发明实施例提供的故障根因分析方法,根据各网元的故障子图之间的故障传播关系,生成故障知识图谱;对故障知识图谱进行根因分析和领域知识标注,分别得到故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库;然后根据故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案,完全克服了传统方案中需耗费大量时间经济成本,关联关系不准确,以及无法区分故障场景和无法关联故障解决方案的缺陷,在集聚了同一类型故障的故障子图形成的故障知识图谱的基础上,通过根因分析保证了各网元之间的根因关系的准确性,实现了根因关系与领域知识库的联动,以及故障解决方案的自适配。
[0139] 下面对本发明提供的故障根因分析装置进行描述,下文描述的故障根因分析装置与上文描述的故障根因分析方法可相互对应参照。
[0140] 图6是本发明提供的故障根因分析装置的结构示意图,如图6所示,该装置包括:
[0141] 故障子图确定单元610,用于基于任一网元的运行参数的异常检测结果,确定该网元的故障子图;
[0142] 知识图谱生成单元620,用于基于各网元的故障子图之间的故障传播关系,生成故障知识图谱;
[0143] 分析标注单元630,用于对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库;
[0144] 解决方案确定单元640,用于基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案。
[0145] 本发明提供的故障根因分析装置,根据各网元的故障子图之间的故障传播关系,生成故障知识图谱;对故障知识图谱进行根因分析和领域知识标注,分别得到故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库;然后根据故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案,完全克服了传统方案中需耗费大量时间经济成本,关联关系不准确,以及无法区分故障场景和无法关联故障解决方案的缺陷,在集聚了同一类型故障的故障子图形成的故障知识图谱的基础上,通过根因分析保证了各网元之间的根因关系的准确性,实现了根因关系与领域知识库的联动,以及故障解决方案的自适配。
[0146] 基于上述实施例,分析标注单元630用于:
[0147] 基于历史故障数据,对所述故障知识图谱中各网元的异常信息进行根因分析,得到所述故障知识图谱中各网元之间的初始根因关系;
[0148] 基于预设推理方式,对所述初始根因关系进行编辑修正,得到所述故障知识图谱中各网元之间的根因关系;
[0149] 所述预设推理方式包括专家经验推理、数据库知识推理、调用链推理、领域知识推理中的至少一种。
[0150] 基于上述实施例,分析标注单元630用于:
[0151] 确定所述故障知识图谱中各网元的网元实体与其他网元的网元实体之间的关联关系,所述关联关系包括直接关系和间接关系;
[0152] 若所述关联关系为空,则对对应网元的网元实体之间的初始根因关系进行裁剪,得到所述故障知识图谱中各网元之间的根因关系。
[0153] 基于上述实施例,分析标注单元630用于:
[0154] 确定所述故障知识图谱中各网元的网元实体下的各网元实例之间的调用关系和初始根因关系,所述调用关系包括直接调用关系和间接调用关系;
[0155] 若所述各网元实例之间的调用关系和初始根因关系的指向相同,则对所述各网元实例之间的初始根因关系进行裁剪,得到所述故障知识图谱中各网元之间的根因关系。
[0156] 基于上述实施例,分析标注单元630用于:
[0157] 基于所述故障知识图谱,以及所述领域知识库中的已知故障,确定所述故障知识图谱中各网元的故障子图与所述领域知识库中的已知故障之间的相似度;
[0158] 基于所述相似度,对所述各网元之间的初始根因关系进行优化,得到所述故障知识图谱中各网元之间的根因关系。
[0159] 基于上述实施例,解决方案确定单元640用于:
[0160] 对所述故障知识图谱中各网元之间的根因关系,以及对应网元的领域知识库中已标注的领域知识进行匹配;
[0161] 若匹配成功,则输出故障解决方案。
[0162] 基于上述实施例,解决方案确定单元640用于:
[0163] 若匹配失败,则基于所述故障知识图谱中各网元之间的根因关系,生成对应的领域知识并存储于所述对应网元的领域知识库。
[0164] 基于上述实施例,分析标注单元630用于:
[0165] 基于历史故障知识图谱,对所述故障知识图谱进行故障类型标注、故障名称标注、故障诊断标注、故障解决方案标注中的至少一种,得到所述故障知识图谱中各网元的领域知识库;
[0166] 所述历史故障知识图谱基于历史故障数据确定,所述历史故障数据包括历史运行参数和/或历史故障子图。
[0167] 图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行故障根因分析方法,该方法包括:基于任一网元的运行参数的异常检测结果,确定该网元的故障子图;基于各网元的故障子图之间的故障传播关系,生成故障知识图谱;对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库;基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案。
[0168] 此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0169] 另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的故障根因分析方法,该方法包括:基于任一网元的运行参数的异常检测结果,确定该网元的故障子图;基于各网元的故障子图之间的故障传播关系,生成故障知识图谱;对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库;基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案。
[0170] 又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法所提供的故障根因分析方法,该方法包括:基于任一网元的运行参数的异常检测结果,确定该网元的故障子图;基于各网元的故障子图之间的故障传播关系,生成故障知识图谱;对所述故障知识图谱进行根因分析,得到所述故障知识图谱中各网元之间的根因关系,对所述故障知识图谱进行领域知识标注,得到所述故障知识图谱中各网元的领域知识库;基于所述故障知识图谱中各网元之间的根因关系,以及各网元的领域知识库,确定故障解决方案。
[0171] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0172] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0173] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。