分布式系统的故障识别方法、装置及存储介质与流程

摘要: 本技术涉及分布式系统领域,具体而言,涉及一种分布式系统的故障识别方法、装置及存储介质。背景技术:1、现有分布式系统中,微服务架构因服务粒度细、调用链路复杂、依赖...
分布式系统的故障识别方法、装置及存储介质与流程

本技术涉及分布式系统领域,具体而言,涉及一种分布式系统的故障识别方法、装置及存储介质。

背景技术:

1、现有分布式系统中,微服务架构因服务粒度细、调用链路复杂、依赖关系动态变化,导致故障发生时难以准确定位根因节点及根因类型。传统的监控与诊断方法多依赖于独立指标阈值告警或浅层链路追踪,仅能识别单点性能异常,无法有效捕获跨服务、跨调用层级的隐性故障传播模式;尤其在高并发、异构部署环境下,大量交易链路中细微但具有共性的异常模式被噪声掩盖,现有技术缺乏对多维时序异常指标的语义关联建模能力,难以从海量链路指纹中提取出具有诊断价值的故障模式聚类。同时,由于服务拓扑关系与调用上下文信息割裂,故障根因节点往往被误判为高负载或高延迟的末端服务,而真正的根因节点因缺乏全局上下文融合分析机制而长期被误诊或漏诊,导致运维响应滞后、平均修复时间高,严重制约分布式系统的稳定性与可观测性水平。

2、针对相关技术中分布式系统中故障发生时无法准确识别根因节点的问题,目前尚未提出有效的解决方案。

技术实现思路

1、本技术的主要目的在于提供一种分布式系统的故障识别方法、装置及存储介质,以解决相关技术中分布式系统中故障发生时无法准确识别根因节点的问题。

2、为了实现上述目的,根据本技术的一个方面,提供了一种分布式系统的故障识别方法。该方法包括:对分布式系统中每笔交易对应的链路指纹向量中的异常指标进行聚合处理,得到每笔交易对应的聚合后的异常指标向量,并将每笔交易对应的聚合后的异常指标向量整合为异常指标向量集;根据每笔交易对应的链路指纹向量中的异常指标,识别分布式系统中的异常交易;根据密度聚类算法对异常交易对应的异常指标向量进行聚类分析,确定共性故障簇,并通过图嵌入算法将共性故障簇中的异常指标向量转化为拓扑向量,其中,共性故障簇中包括至少一个异常指标向量;对拓扑向量、异常指标向量集和历史故障案例的特征向量进行融合处理,得到融合后的特征向量;通过自注意力机制,对融合后的特征向量进行加权处理,得到目标特征向量;将目标特征向量映射为候选节点概率分布,将候选节点中概率最大的候选节点确定为根因节点,并根据根因节点的根因类型确定自愈建议,根据自愈建议对根因节点执行自愈恢复操作。

3、可选地,在对分布式系统中每笔交易对应的链路指纹向量中的异常指标进行聚合处理之前,该方法还包括:获取分布式系统中每笔交易对应的全链路数据;通过哈希算法对每笔交易对应的全链路数据中的服务名称、接口路径进行加密编码,得到每笔交易对应的加密编码后的向量;通过归一化算法对每笔交易对应的全链路数据中的响应时间进行归一化处理,得到每笔交易对应的响应时间归一化向量;对每笔交易对应的全链路数据中的错误码进行独热编码处理,得到每笔交易对应的错误码编码向量;对每笔交易对应的加密编码后的向量、每笔交易对应的响应时间归一化向量、每笔交易对应的错误码编码向量进行拼接处理,得到每笔交易对应的链路指纹向量。

4、可选地,对分布式系统中每笔交易对应的链路指纹向量中的异常指标进行聚合处理,得到每笔交易对应的聚合后的异常指标向量,并将每笔交易对应的聚合后的异常指标向量整合为异常指标向量集包括:根据预设聚合规则在预设时间窗口内对每笔交易对应的链路指纹向量中的异常指标进行聚合处理,得到每笔交易对应的聚合后的异常指标向量,其中,预设聚合规则至少包括:异常响应时间聚合规则、错误码聚合规则、异常依赖资源指标聚合规则;将每笔交易对应的聚合后的异常指标向量整合为异常指标向量集。

5、可选地,通过图嵌入算法将共性故障簇中的异常指标向量转化为拓扑向量包括:将每个共性故障簇转化为节点图,其中,节点图中的节点为异常指标向量对应的微服务实例,节点图中的边为微服务实例之间的调用关系,节点图中的边权重为单位时间内的微服务实例之间的调用次数;通过图嵌入算法的随机游走节点序列生成公式,生成每个节点对应的节点序列;通过特征映射函数将每个节点对应的节点序列转化为每个节点对应的拓扑向量。

6、可选地,通过自注意力机制,对融合后的特征向量进行加权处理,得到目标特征向量包括:基于自注意力机制,根据查询投影矩阵将融合后的特征向量映射为查询向量,根据键投影矩阵将融合后的特征向量映射为键向量,根据值投影矩阵将融合后的特征向量映射为值向量;根据查询向量和键向量计算注意力权重矩阵,并根据注意力权重矩阵对值向量进行加权求和,得到目标特征向量。

7、可选地,在通过特征映射函数将每个节点对应的节点序列转化为每个节点对应的拓扑向量之后,该方法还包括:计算节点图中任意两个节点对应的拓扑向量之间的相似度;确定相似度大于预设阈值的节点为共性故障节点;根据共性故障节点的异常行为特征确定共性故障节点的故障类型。

8、可选地,在根据根因节点的根因类型确定自愈建议,根据自愈建议对根因节点执行自愈恢复操作之后,该方法还包括:根据根因节点生成分布式系统的故障分析报告;在根因节点根据自愈建议成功恢复后,将根因节点和自愈建议添加至历史故障案例库;在根因节点根据自愈建议恢复失败后,生成根因节点对应的告警信息,并将告警信息发送至运维人员。

9、为了实现上述目的,根据本技术的另一方面,提供了一种分布式系统的故障识别装置。该装置包括:整合单元,用于对分布式系统中每笔交易对应的链路指纹向量中的异常指标进行聚合处理,得到每笔交易对应的聚合后的异常指标向量,并将每笔交易对应的聚合后的异常指标向量整合为异常指标向量集;识别单元,用于根据每笔交易对应的链路指纹向量中的异常指标,识别分布式系统中的异常交易;聚类单元,用于根据密度聚类算法对异常交易对应的异常指标向量进行聚类分析,确定共性故障簇,并通过图嵌入算法将共性故障簇中的异常指标向量转化为拓扑向量,其中,共性故障簇中包括至少一个异常指标向量;融合单元,用于对拓扑向量、异常指标向量集和历史故障案例的特征向量进行融合处理,得到融合后的特征向量;处理单元,用于通过自注意力机制,对融合后的特征向量进行加权处理,得到目标特征向量;第一确定单元,用于将目标特征向量映射为候选节点概率分布,将候选节点中概率最大的候选节点确定为根因节点,并根据根因节点的根因类型确定自愈建议,根据自愈建议对根因节点执行自愈恢复操作。

10、根据本技术的另一方面,提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行任意一种分布式系统的故障识别方法。

11、根据本技术的另一方面,提供了一种电子设备,包括:一个或多个处理器,存储器,以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,一个或多个程序包括用于执行任意一种分布式系统的故障识别方法。

12、根据本技术的另一方面,提供了一种计算机程序产品,包括计算机指令,计算机指令被处理器执行时实现上述任意一项的分布式系统的故障识别方法的步骤。

13、在本技术实施例中,通过对分布式系统中每笔交易对应的链路指纹向量中的异常指标进行聚合处理,得到每笔交易对应的聚合后的异常指标向量,并将每笔交易对应的聚合后的异常指标向量整合为异常指标向量集;根据每笔交易对应的链路指纹向量中的异常指标,识别分布式系统中的异常交易;根据密度聚类算法对异常交易对应的异常指标向量进行聚类分析,确定共性故障簇,并通过图嵌入算法将共性故障簇中的异常指标向量转化为拓扑向量,其中,共性故障簇中包括至少一个异常指标向量;对拓扑向量、异常指标向量集和历史故障案例的特征向量进行融合处理,得到融合后的特征向量;通过自注意力机制,对融合后的特征向量进行加权处理,得到目标特征向量;将目标特征向量映射为候选节点概率分布,将候选节点中概率最大的候选节点确定为根因节点,并根据根因节点的根因类型确定自愈建议,根据自愈建议对根因节点执行自愈恢复操作,解决了分布式系统中故障发生时无法准确识别根因节点的技术问题。

14、在本技术中,通过对分布式系统中每笔交易对应的链路指纹向量中的异常指标进行聚合处理,得到每笔交易对应的聚合后的异常指标向量,并整合得到异常指标向量集,使用密度聚类算法对异常指标向量进行聚类分析,识别出具有相似异常模式的共性故障簇,通过图嵌入算法将共性故障簇中的异常指标向量转化为能够反映服务调用结构与依赖关系的拓扑向量,融合拓扑向量、异常指标向量集和历史故障案例的特征向量,得到融合后的特征向量,引入注意力机制,对融合后的特征向量进行加权处理,能够提升特征表达的判别力,得到目标特征向量,将目标特征向量映射为候选节点的概率分布,概率最高节点即为最可能的根因节点,并推断根因类型,根据根因类型确定自愈建议,自动触发恢复操作,实现了准确识别分布式系统中发生故障的根因节点的技术效果。