首页> 中国专利> 一种因果关系检验和微服务指标预测报警方法

一种因果关系检验和微服务指标预测报警方法

摘要

本发明涉及一种因果关系检验和微服务指标预测报警方法,包括:基于Granger因果关系检验的服务指标因果关系发现、基于Attention LSTM的多指标预测。该方法通过Granger因果关系检验发现与要预测指标具有因果关系的指标,共同参与预测,提高了预测的准确率。同时针对微服务场景中指标序列较长,指标之间往往局部存在因果关系,整体因果关系不强的问题,本发明对Granger因果关系检验进行改进,分段增量计算因果关系。这种方法在实际应用中,当时间序列有新的值加入时,只需要计算增量的因果关系,无需对历史数据重新计算,从而减少计算量,提高了微服务场景下因果关系发现的效率。

著录项

  • 公开/公告号CN114579407A

    专利类型发明专利

  • 公开/公告日2022-06-03

    原文格式PDF

  • 申请/专利权人 北京航空航天大学;

    申请/专利号CN202210478087.8

  • 发明设计人 吴文峻;姬索肇;杨京波;

    申请日2022-05-05

  • 分类号G06F11/30;G06F11/32;G06N3/04;

  • 代理机构北京科迪生专利代理有限责任公司;

  • 代理人金怡;邓治平

  • 地址 100191 北京市海淀区学院路37号

  • 入库时间 2023-06-19 15:32:14

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-06-03

    公开

    发明专利申请公布

说明书

技术领域

本发明属于计算机应用技术领域,具体涉及一种因果关系检验和微服务指标预测报警方法。

背景技术

随着互联网的发展,网络服务爆炸式增长,为人们的生活带来了便利,如今人们的衣食住行已经越来越离不开互联网服务。同时,网络服务的用户数量飞速增长,传统网络服务的系统架构迭代缓慢,部署和维护困难,已经不能满足现在的需求。微服务架构克服了传统架构的缺点,受到了广泛的关注。

微服务架构将单体服务划分成多个小的服务,每个服务独立运行,通过服务间的配合为用户提供服务。服务通信采用轻量级的通信机制,每个服务都由具体的业务团队独立开发,独立部署,非常适合现在的互联网应用开发。

准确预测微服务指标的未来值对服务资源的分配和扩缩容具有重要意义。在很多情况下,仅依靠指标自身难以准确预测,需要引入其他的相关指标帮助预测,在传统的多指标预测中,相关指标是已知的或者数量很少,比较容易获得。然而在微服务领域中,服务的指标有很多且指标的关系是不断变化的,因此需要使用新的方法在海量的指标中快速准确的发现相关的指标。

发明内容

本发明技术解决问题:克服现有技术的不足,提出一种基于Granger因果关系检验和Attention LSTM(基于注意力的机制的长短期记忆神经网络)的微服务指标预测方法,提高了微服务指标预测的准确率。

本发明技术解决方案:一种因果关系检验和微服务指标预测报警方法,包括如下步骤:

1. 基于Granger因果关系检验的服务指标因果关系发现

(1) 首先对服务指标数据进行数据预处理,对服务指标数据进行平稳性检验,不平稳的序列需要进行差分处理。

(2) 对服务指标进行Granger因果关系检验。由于对较长的时间序列进行Granger因果关系检验会存在误判的问题,而微服务场景中指标序列较长,指标之间往往局部存在因果关系,整体因果关系不强。本发明对Granger因果关系检验进行改进,分段增量计算因果关系,具体方法是将服务指标分割为长度相等的分段,然后对两个指标的对应分段进行Granger因果关系检验,最后对具有因果关系的分段数量进行统计,具有因果关系的分段数量越多,因果关系越强。

对服务指标X和服务指标Y的一个分段进行Granger因果关系检验计算方法如下:

上述两个公式依次计算,其中,

(3) 所有指标之间的因果关系计算完毕后,将因果关系保存到因果关系图中,供Attention LSTM多指标预测模型使用。

2. 基于Attention LSTM的多指标预测

(1) 从Granger因果关系检验得到的服务指标因果关系图中与要预测的指标因果关系最强的几个指标,加上要预测的指标本身,共同作为Attention LSTM预测模型的输入。

(2) 对输入的指标进行预处理,所有指标归一化到0到1之间,如果服务指标有数据缺失的问题,将指标缺失值设置为前后值的平均值。

(3) 指标预处理后作为LSTM层的输入,LSTM层的模型公式如下:

其中,

(4) LSTM层的输出作为Attention层的输入,Attention层能够使神经网络有选择地关注输入特征,并将学习到的特征权重保存赋值给下一个时间步长的输入向量,利用权值矩阵分配注意力,从而突出关键输入特征对预测的影响。Attention层的模型公式如下:

其中,

本发明与现有技术相比的优点在于:

(1) 通过Granger因果关系检验发现与要预测指标具有因果关系的指标,共同参与预测,提高了预测的准确率。

(2) 针对微服务场景中指标序列较长,指标之间往往局部存在因果关系,整体因果关系不强的问题。本发明对Granger因果关系检验方法进行改进,分段增量计算因果关系。这种方法在实际应用中,当时间序列有新的值加入时,只需要计算增量的因果关系,无需对历史数据重新计算,从而减少计算量,提高了微服务场景下因果关系发现的效率。

(3) 本发明异常指标检测方法结合图形可视化技术可以 将异常点标注到实时指标数据折线图中,方便运维人员查看和排查。使用 Granger 因果关系检验产生的因果关系图可以解决这一个问题,如果具有因果关系的指标同时发生异常波动,则可以收敛为一个异常,避免异常报警过多。

(4) 本发明针对服务平台中进行复合报警、报警收敛以及报警通知的相关原理和开发工作。发明了复合报警方法可以对多个指标配置复合报警,通过使用表达式 的形式简化了复合报警的配置,同时提高了配置报警的灵活性。

(5) 本发明开发的报警收敛方法可以根据服务网格生成的服务调用关系图、服务指标因果关系图以及开发人员编辑的报警拓扑关系对同一时间范围内发生的异常报警进行聚合,将存在关联的异常报警收敛 为一条报警,减少开发人员的故障排查成本。

附图说明

图1是本发明中基于Granger 因果关系检验和Attention LSTM的多指标预测模型架构图;

图2是本发明中分段进行Granger因果关系检验示意图;

图3是本发明的Attention LSTM预测模型分层结构图;

图4复合报警表达式解析为抽象语法树示意图;

图5 指标异常标注示意图;

图6 报警收敛架构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅为本发明的一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域的普通技术人员在不付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。

根据本发明的一个实施例,如图1所示,一种因果关系检验和微服务指标预测报警方法,根据指标数据进行 Granger因果关系检验,生成因果关系图,根据要预测的指标以及存在的关系指标通过Attention LSTM预测模型,输出预测结果提出。具体包括如下步骤:

步骤一、基于Granger因果关系检验的服务指标进行因果关系发现;

步骤二、基于Attention LSTM进行多指标预测、以及服务异常检测和服务智能报警

所述的步骤1,基于Granger因果关系检验的服务指标因果关系发现,具体步骤如下:

(1) 首先对服务指标数据进行数据预处理,对服务指标数据进行平稳性检验,不平稳的序列需要进行差分处理。

(2) 对服务指标进行Granger因果关系检验。由于对较长的时间序列进行Granger因果关系检验会存在误判的问题,而微服务场景中指标序列较长,指标之间往往局部存在因果关系,整体因果关系不强。本发明对Granger因果关系检验进行改进,分段增量计算因果关系,具体方法是将服务指标分割为长度相等的分段,然后对两个指标的对应分段进行Granger因果关系检验,最后对具有因果关系的分段数量进行统计,具有因果关系的分段数量越多,因果关系越强。

对服务指标X和服务指标Y的一个分段进行Granger因果关系检验计算方法如下:

上述两个公式依次计算,其中,

(3) 所有指标之间的因果关系计算完毕后,将因果关系保存到因果关系图中,供Attention LSTM多指标预测模型使用。

根据本发明的一个实施例,如图2所示,为分段进行 Granger 因果关系检验示意图,对两个时间序列 x1 和 x2 进行因果关系检验时,对 x1 和 x2 进行分段, 然后两个序列的对应分段进行 Granger 因果关系检验,对 x1 → x2 具有因果关系的分段 数量进行统计,认为具有因果关系的分段数量越多,因果关系越强。图3是本发明的AttentionLSTM预测模型分层结构图;

所述的步骤2. 基于Attention LSTM的多指标预测,具体步骤如下:

(1) 从Granger因果关系检验得到的服务指标因果关系图中与要预测的指标因果关系最强的几个指标,加上要预测的指标本身,共同作为Attention LSTM预测模型的输入。

(2) 对输入的指标进行预处理,所有指标归一化到0到1之间,如果服务指标有数据缺失的问题,将指标缺失值设置为前后值的平均值。

(3) 指标预处理后作为LSTM层的输入,LSTM层的模型公式如下:

其中,

(4) LSTM层的输出作为Attention层的输入,Attention层能够使神经网络有选择地关注输入特征,并将学习到的特征权重保存赋值给下一个时间步长的输入向量,利用权值矩阵分配注意力,从而突出关键输入特征对预测的影响。Attention层的模型公式如下:

其中,

进一步的,所述步骤2中服务异常检测具体如下:

依据所述基于 Granger 因果关系检验和 Attention LSTM 的多指标预测模型对多指标进行异常检测,使用多指标共同预测指标的未来值,如果指标真实值与预测值的差距大于置信区间,则标记为异常,效果如图5所示。

当服务项目出现异常时,往往同时产生多个指标的异常报警,给异常的排查造成困扰。使用 Granger 因果关系检验产生的因果关系图可以解决这一个问题,如果具有因果关系的指标同时发生异常波动,则可以收敛为一个异常,避免异常报警过多。

进一步的,所述步骤2中服务智能报警,具体如下:

3.1 复合报警

基于表达式引擎的复合报警工具首先对开发人员配置的复合报警的表达式进行语法解析,生成抽象语法树,然后根据涉及指标的时间戳或者其他维度对指标 数据进行抽取,根据抽象语法树计算该表达式在每个时间点的值,最后按照计算的值给 出每个时间点是否触发报警。表达式引擎支持加减乘除四则运算以及自定义函数运算,自定义函数可以使用 Python 编程语言定义。表达式引擎将复合报警的表达式解析为抽象语法树的示意图如图4所示,进行语法分析时会对指标、运算符、函数进行标记,然后根据运算规则生成对应的抽象语法树,例如图4中的复合报警表达式为“服务 1. 指标 1/(服务 1. 指标 1+ 服务2. 指标 2)<0.8”,生成的抽象语法树的根节点是“<” 号,对于两个指标的每个时间点,都会按照抽象语法树先计算“服务 1. 指标 1/(服务 1. 指标 1+服务 2. 指标 2)”,再用计算结果跟 0.8 比较,最后判断该时间点是否触发报警。由于在实际应用中需要配置多个复合报警,每个复合报警往往需要计算较长时间跨度的指标数据,因此本发明将表达式引擎封装为一个无状态的微服务,复合报警工具可以通过调用表达式引擎服务,当计算量较大时表达式引擎可以水平扩展为多个实例,通过多实例并行计算提高计算的效率。通过本文提供的基于表达式引擎的复合报警工具,可以大大简化复杂的报警配置,同时提高配置报警的灵活性。

3.2 报警收敛

多数系统或者平台中服务的数量和监控指标众多,服务间的调用关系复杂,导致服务报警之间也存在关联。当服务项目发生故障时通常是多个服务的多个指标同时发生异常报警,在这种情况下开发人员往往很难发现不同的异常报警之间的关联,需要对每个异常报警进行分析和排查,给开发人员进行故障排除造成困难。针对这一问题,本发明实行基于服务调用关系、服务指标因果关系以及开发人员自定义的报警拓扑关系的报警收敛方法及模块系统架构。

如图5所示,当微服务项目出现异常时,往往同时产生多个指标的异常报警,给异常的排查造成困扰。使用 Granger 因果关系检验产生的因果关系图可以解决这一个问题,如果具有因果关系的指标同时发生异常波动,则可以收敛为一个异常,避免异常报警过多。

收敛架构如图6所示,当多个服务指标触发异常报警时,会根据服务调用关系图、服务指标因果关系图、用户自定义的报警拓扑关系图等信息对一定时间范围内发生的异常进行聚合,如果两个异常报警之间存在联系,则将这两个异常报警聚合到一起,发送报警通知时将所有存在关联的异常报警一起通知,减少开发人员故障 排查的成本。服务调用关系图通过服务网格实时记录和生成,服务指标的因果关系图生成采用本发明所述基于Granger 因果关系检验的服务指标因果关系发现算法,本发明利用报警拓扑关系编辑器,为用户提供自定义报警拓扑关系的能力。

报警拓扑关系编辑器对接服务指标收集模块和服务异常检测模块,用节点表示服务指标的报警,编辑器支持搜索现有的报警,将报警添加到拓扑关系图中,对节点进行拖拽、连线、删除等操作,节点之间的有向边表示报警之间的拓扑关系。报警拓扑关系编辑完成后,编辑器支持将图数据导出为 json、JanusGraph 图数据库 Gremlin 语句等多种格式。

3.3 报警通知

报警通知对接服务指标收集模块和服务异常检测模块,当开发人员 收到了某个指标的报警通知时,报警通知工具自动获取异常报警的相关数据,将报警的 文本信息、异常指标的折线图通过邮件等形式发送给用户。当对聚合报警进行通知时, 报警通知工具会自动获取报警收敛的相关数据,将服务调用关系图、服务指标因果关系图以及开发人员配置的报警拓扑关系图一起发送给用户。

尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,且应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号