一种基于多模态异常检测的微服务瞬时故障定位方法技术

技术编号:38326288 阅读:12 留言:0更新日期:2023-07-29 09:09
本发明专利技术公开了一种基于多模态异常检测的微服务瞬时故障定位方法。本发明专利技术首先通过收集微服务系统中多模态数据对微服务瞬时故障开展多维度检测,捕获多模态数据之间的时间及内部关系,设置动态异常阈值进行异常检测并结合微服务瞬时故障瞬时重现的特性判定出现瞬时故障的异常微服务,进一步依据微服务调用序列构建局部微服务链路拓扑图,最后通过动态故障责任评分方法得到瞬时故障发生来源的微服务节点,确定故障根源微服务。本发明专利技术通过从多角度分析并提供最有可能为瞬时故障发生来源的微服务节点集,提高了微服务瞬时故障根因定位的准确率,降低了运维人员的故障排查难度,提升了微服务系统的稳定性。升了微服务系统的稳定性。升了微服务系统的稳定性。

【技术实现步骤摘要】
一种基于多模态异常检测的微服务瞬时故障定位方法


[0001]本专利技术涉及计算机
,尤其是一种基于多模态异常检测的微服务瞬时故障定位方法。

技术介绍

[0002]随着互联网应用发展,传统软件架构已难以满足灵活多变的业务需求。微服务架构将单个Web应用拆分成若干个可独立部署的微服务,相互间通过轻量级通信协议协同,成为当前主流架构之一。然而微服务之间复杂的交互,在时间与空间上的动态性质,以及调用流程长则导致微服务系统运维难度增大。当微服务发生瞬时故障时,相比传统软件故障更加复杂且发生故障的根本原因难以发现;并且由于故障的传播性,当某个微服务发生异常可能导致与其直接或间接相关的微服务也出现异常,特别是面对瞬时故障其独具的突发性和无规律性时,对运维人员则意味着需要更多的人力物力。
[0003]目前在微服务故障的工作中,很少有针对微服务瞬时故障的技术方案,大部分基于微服务性能指标数据对微服务状态进行监测,但由于微服务之间的复杂调用及故障传播性的影响,这类方法难以找到实际微服务故障点。此外,通过对微服务调用过程进行监控,依据微服务调用关系图进行故障定位的方法,则无法发现微服务系统中的性能影响因素,并且随着微服务系统不断的更新扩大,导致成本开销不断上升,最终无法获得理想结果。因此,如何对微服务系统中瞬时故障进行定位,并减少开销及时间成本是一项挑战。

技术实现思路

[0004]为解决上述提出的问题,本专利技术提供一种基于多模态异常检测的微服务瞬时故障定位方法。
[0005]本专利技术通过收集微服务系统中多模态数据对微服务瞬时故障开展多维度检测,结合微服务瞬时故障瞬时重现的特性判定出现瞬时故障的异常微服务,进一步依据微服务调用序列及故障责任评分方案对微服务系统瞬时故障定位。
[0006]为达到上述目的,本专利技术采用以下技术方案:
[0007]本专利技术方法的具体步骤是:
[0008]步骤1.将微服务系统中微服务所在容器性能数据、调用链中各微服务性能数据及日志数据进行预处理,包括缺失值处理、归一化处理和数据对齐处理。
[0009]步骤2.对预处理后日志数据使用排水算法提取模板矩阵,对性能数据提取特征矩阵,根据模板矩阵、特征矩阵和时间序列构建多模态序列化数据矩阵,作为多模态预测模型的输入数据。
[0010]步骤3.使用训练好的基于转换器的多模态预测模型对微服务系统进行预测,设置动态异常阈值进行异常检测,选取时间窗口内出现异常次数最多的一个微服务标记为瞬时故障节点。
[0011]步骤4.通过分布式链路追踪工具收集包含瞬时故障节点的用户请求周期内的微
服务调用链信息,构建局部微服务链路拓扑图。
[0012]步骤5.基于局部微服务链路拓扑图,计算微服务的动态故障责任评分,判断瞬时故障根源的微服务节点。
[0013]与现有技术相比,本专利技术具有如下的优点:
[0014]1.提供了一种为基于容器的微服务环境设计的,与应用程序无关的无监督微服务异常检测方案,目前常规的微服务异常检测方法往往是需要提前为数据打上标签的有监督方法。
[0015]2.所提出基于多模态时间序列的微服务瞬时故障判定方法更加符合实际微服务系统生产场景,多模态数据的融合为模型提供了预测仅通过单一数据源无法揭示的多种结果的能力。
[0016]3.所提出的故障责任评分是一种新的机制来筛选微服务系统中导致发生瞬时故障的微服务节点,通过从多角度分析并提供最有可能为瞬时故障发生来源的微服务节点集,提高了微服务瞬时故障根因定位的准确率,降低了运维人员的故障排查难度,提升了微服务系统的稳定性。
附图说明
[0017]图1为本专利技术方法具体实施例中基于多模态异常检测的微服务瞬时故障定位方法的流程示意图。
[0018]图2为本专利技术方法具体实施例中基于预处理后的多模态数据样本构建序列化特征矩阵的示意图。
[0019]图3为本专利技术方法具体实施例中基于转换器的多模态预测模型结构示意图。
[0020]图4为本专利技术方法具体实施例中基于微服务调用链信息生成微服务调用拓扑示意图。
具体实施方式
[0021]为了使本专利技术的技术方案更加清楚,下面结合附图,进行进一步的详细说明,但本专利技术的实施和保护不限于此。
[0022]本专利技术的主要技术构思:针对目前的微服务系统中瞬时故障、多监控数据源等特点,本专利技术提出了一种新的基于多模态时间序列的微服务瞬时故障判定方法,该方法将不同数据源的异构数据进行融合,建立基于转换器的多模态预测模型(Transformer),该模型可以捕获多模态数据之间的时间及内部关系,同时设置动态异常阈值,更准确的检测微服务系统的异常状态,是对微服务瞬时故障定位的前提;而故障诊断是维持微服务系统稳定性的重要环节,由于微服务架构自身的特性,服务之间存在故障的间接传播,需要有效的动态定位机制来判断出现瞬时故障的根本微服务节点以进一步判定根因。本专利技术藉此提出了一种新的基于故障责任评分的瞬时故障定位方案,该方案利用前述的多模态预测模型捕获微服务发生瞬时故障的时间点及具体故障服务,结合时间窗口内的微服务调用链信息,自动对微服务进行故障责任评分,最后对服务的故障责任分数进行排序以帮助运维人员找到问题的根本原因。
[0023]以下进一步结合实施例来对本专利技术作说明。
[0024]如图1所示,本实施例包括以下步骤:
[0025]步骤1.将微服务系统中微服务所在容器性能数据、调用链中各微服务性能数据及日志数据进行预处理,包括缺失值处理、归一化处理和数据对齐处理。
[0026]所述微服务系统中容器的性能数据指使用分布式链路追踪工具进行性能监控,包括微服务运行时容器的CPU使用率、内存使用率和网络传输速;
[0027]所述调用链中各微服务性能数据指每次分布式请求调用时各个微服务节点对于请求的响应时间;
[0028]所述日志数据指利用分布式链路追踪工具收集到的日志记录;
[0029]所述缺失值处理指对于微服务系统中容器的性能数据和各微服务响应时间数据中某行或某列的缺失值使用线性插值法来填补;
[0030]所述数据归一化处理指经过缺失值处理后的容器性能数据及各微服务的相应时间进行归一化到较小的范围内,使其分布在[0,1];
[0031]所述数据对齐指根据时间戳对齐日志数据与其他数据,处理不同数据之间不同的生成速率。
[0032]步骤2.对预处理后日志数据使用排水算法提取模板矩阵,对性能数据提取特征矩阵,根据模板矩阵、特征矩阵和时间序列构建多模态序列化数据矩阵,作为转换器预测模型的输入数据。
[0033]图2为本实施例中根据预处理后的数据样本构建序列化特征矩阵的示意图。针对日志数据,使用排水算法对日志数据进行日志模板提取,总共提取出D个模板并对模板编号,将每个模板表示为一个D维向量,向量内的元素只能是1或0,当一条日志数据属于第i个模板,则对应的向量的第i个元素为1,其余元素为0;然后将每条日志数据按照时间顺本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于多模态异常检测的微服务瞬时故障定位方法,其特征在于,该方法包括如下步骤:步骤1.将微服务系统中微服务所在容器性能数据、调用链中各微服务性能数据及日志数据进行预处理,包括缺失值处理、归一化处理和数据对齐处理;步骤2.对预处理后日志数据使用排水算法提取模板矩阵,对性能数据提取特征矩阵,根据模板矩阵、特征矩阵和时间序列构建多模态序列化数据矩阵,作为多模态预测模型的输入数据;步骤3.使用训练好的基于转换器的多模态预测模型对微服务系统进行预测,设置动态异常阈值进行异常检测,选取时间窗口内出现异常次数最多的一个微服务标记为瞬时故障节点;步骤4.通过分布式链路追踪工具收集包含瞬时故障节点的用户请求周期内的微服务调用链信息,构建局部微服务链路拓扑图;步骤5.基于局部微服务链路拓扑图,计算微服务的动态故障责任评分,判断瞬时故障根源的微服务节点。2.根据权利要求1所述的一种基于多模态异常检测的微服务瞬时故障定位方法,其特征在于,步骤1中,所述微服务系统中微服务所在容器性能数据包括微服务运行时容器的CPU使用率、内存使用率和网络传输率;所述调用链中各微服务性能数据指每次分布式请求调用时,各个微服务节点对于请求的响应时间。3.根据权利要求1所述的一种基于多模态异常检测的微服务瞬时故障定位方法,其特征在于,步骤3中,所述时间窗口指在一定时间范围内进行异常检测和统计的时间间隔;所述动态阈值指动态确定某个时间点的各微服务响应时间阈值,利用基于极值理论的阈值选择方法POT动态确定某一时间点的各微服务响应时间阈值。4.根据权利要求1所述的一种基于多模态异常检测的微服务瞬时故障定位方法,其特征在于,步骤4中,所述调用链基本信息包括调用端、被调用端、起始时间及结束时间,构建局部微服务链路拓扑图,其中节点代表微服务,边代表微服务之间的调用关系。5.根据权利要求1所述的一种基于多模态异常检测的微服务瞬时故障定位方法,其特征在于,步骤5中,所述故障责任评分用来衡量局部服务链路拓扑图中各个微服务节点的故障责任相关程度,故障责任评分具体包含异常相关分数、性能...

【专利技术属性】
技术研发人员:余佳妮黄雨婷蒋从锋闫龙川
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1