1.基于日志分析的分布式系统故障定位诊断方法,其特征在于,包括:
通过分布式系统中的服务注册中心获取所有微服务节点信息,基于应用程序接口调用链路追踪器采集各微服务节点之间的调用数据,将所述调用数据按照调用时间戳、调用方服务标识、被调用方服务标识、调用接口名称、调用参数和调用状态进行结构化存储;根据结构化存储的调用数据,采用图数据库构建服务依赖关系图,其中图节点表示微服务节点,图边表示服务间调用关系,并在所述图边上标注调用频率、平均响应时间和成功率;
基于所述服务依赖关系图,针对每个微服务节点,计算其作为故障源时对其他微服务节点的影响权重,所述影响权重根据服务间调用频率、调用链路长度、服务重要程度和历史故障数据综合计算得出;采用图卷积神经网络对所述服务依赖关系图进行建模,将每个微服务节点的运行状态指标、系统资源使用情况和业务指标作为节点特征输入,构建故障传播预测模型具体包括:构建多任务预测模型,将节点表示特征输入多层感知机;在所述多层感知机的第一个分支中,基于所述节点表示特征构建故障状态分类器;在所述多层感知机的第二个分支中,计算节点表示特征的相似度矩阵;基于所述相似度矩阵构建故障传播预测模型;将所述故障状态分类器和所述故障传播预测模型的输出组合生成最终预测结果;实时采集所述分布式系统中各微服务节点的运行状态数据,当检测到某个微服务节点出现异常时,将该异常节点作为故障源节点输入所述故障传播预测模型,基于图卷积神经网络计算故障在服务依赖关系图中的传播路径和影响范围,输出受影响服务节点列表及其影响程度;根据影响程度对受影响服务节点进行风险等级划分,并按照预设的风险阈值触发相应级别的告警信息,同时将故障传播路径可视化展示。
2.根据权利要求1所述的方法,其特征在于,通过分布式系统中的服务注册中心获取所有微服务节点信息,基于应用程序接口调用链路追踪器采集各微服务节点之间的调用数据,将所述调用数据按照调用时间戳、调用方服务标识、被调用方服务标识、调用接口名称、调用参数和调用状态进行结构化存储包括:通过分布式系统中的服务注册中心获取所有微服务节点的注册信息,所述注册信息包括服务名称、实例标识、网络地址、端口号和健康检查地址,所述服务注册中心将所述注册信息以临时节点形式存储并通过心跳机制维护所述微服务节点的存活状态;
通过应用程序接口调用链路追踪器采集各微服务节点之间的调用数据,所述应用程序接口调用链路追踪器在微服务节点的远程调用切入点注入追踪逻辑,生成全局唯一的追踪标识和调用标识,并在调用链路中传播所述追踪标识和所述调用标识;所述应用程序接口调用链路追踪器记录调用时间戳、调用方服务标识、被调用方服务标识、调用接口名称、调用参数和调用状态;
将所述调用数据发送至消息队列进行临时存储,由专门的消费者集群从所述消息队列获取所述调用数据并进行分片处理,所述分片处理按照服务维度将所述调用数据划分为多个数据分片;将分片后的调用数据写入分布式时序数据库进行结构化存储。
3.根据权利要求1所述的方法,其特征在于,基于所述服务依赖关系图,针对每个微服务节点,计算其作为故障源时对其他微服务节点的影响权重,所述影响权重根据服务间调用频率、调用链路长度、服务重要程度和历史故障数据综合计算得出包括:基于所述服务依赖关系图,选取待分析的所述微服务节点作为故障源节点,并执行如下步骤计算所述故障源节点对其他所述微服务节点的影响权重:采用图遍历算法分析所述故障源节点到每个所述微服务节点的调用链路,提取所述调用链路上的调用频率数据,将所述调用链路上的调用频率依次相乘得到服务间调用频率影响因子;
基于所述调用链路的节点跳数确定调用链路长度,根据预设的衰减函数计算调用链路长度影响因子,所述调用链路长度影响因子随着所述调用链路的节点跳数增加而减小;
获取所述微服务节点的服务重要程度数据,基于业务重要性、用户影响范围、业务损失程度对所述服务重要程度数据进行量化,得到服务重要程度影响因子;
分析所述微服务节点的历史故障记录,提取故障发生频次、故障恢复时长、故障蔓延范围特征,构建历史故障影响因子;
将所述服务间调用频率影响因子、所述调用链路长度影响因子、所述服务重要程度影响因子和所述历史故障影响因子进行加权组合,得到所述故障源节点对当前所述微服务节点的影响权重;
重复执行上述步骤,直至计算完成所述故障源节点对所述服务依赖关系图中所有其他所述微服务节点的影响权重。
4.根据权利要求1所述的方法,其特征在于,采用图卷积神经网络对所述服务依赖关系图进行建模,将每个微服务节点的运行状态指标、系统资源使用情况和业务指标作为节点特征输入,构建故障传播预测模型包括:基于服务调用日志统计微服务节点之间的调用频率;将所述调用频率归一化生成边权重值;构建带权重的有向图结构,所述有向图结构包括微服务节点集合、调用关系边集和边权重矩阵;在所述有向图结构的邻接矩阵对角线上添加自环连接,生成非对称邻接矩阵;
采集节点多维特征,采集所述微服务节点集合中各节点的运行状态指标,所述运行状态指标包括平均响应时间、请求成功率和错误率;采集所述微服务节点集合中各节点的系统资源指标,所述系统资源指标包括CPU使用率、内存使用率和网络IO;采集所述微服务节点集合中各节点的业务指标,所述业务指标包括服务调用量、业务处理延迟和业务成功率;
计算所述运行状态指标、所述系统资源指标和所述业务指标的历史均值和标准差;基于所述历史均值和所述标准差对所述运行状态指标、所述系统资源指标和所述业务指标进行标准化处理,生成初始节点特征矩阵;
构建图卷积特征提取网络,将所述非对称邻接矩阵和所述初始节点特征矩阵输入第一图卷积层;通过所述第一图卷积层计算得到第一层节点特征;将所述第一层节点特征通过残差连接与原始特征融合;将融合后的特征输入第二图卷积层;在所述第二图卷积层中引入注意力机制,基于所述边权重值对邻居节点特征进行加权聚合;输出最终的节点表示特征;
构建多任务预测模型,将所述节点表示特征输入多层感知机;在所述多层感知机的第一个分支中,基于所述节点表示特征构建故障状态分类器;在所述多层感知机的第二个分支中,计算节点表示特征的相似度矩阵;基于所述相似度矩阵构建故障传播预测模型;将所述故障状态分类器和所述故障传播预测模型的输出组合生成最终预测结果。
5.根据权利要求1所述的方法,其特征在于,实时采集所述分布式系统中各微服务节点的运行状态数据,当检测到某个微服务节点出现异常时,将该异常节点作为故障源节点输入所述故障传播预测模型,基于图卷积神经网络计算故障在服务依赖关系图中的传播路径和影响范围,输出受影响服务节点列表及其影响程度包括:采集微服务运行数据,部署监控探针采集微服务节点的运行状态指标,所述运行状态指标包括响应时间、请求成功率、错误率;采集所述微服务节点的系统资源指标,所述系统资源指标包括CPU使用率、内存使用率、网络IO;采集所述微服务节点的业务指标,所述业务指标包括服务调用量、业务处理延迟、业务成功率;采用滑动时间窗口对所述运行状态指标、所述系统资源指标和所述业务指标进行聚合,所述滑动时间窗口的窗口大小为5分钟,步长为1分钟;计算所述滑动时间窗口内各指标的统计特征,生成实时监控特征矩阵;
构建异常检测基线,对所述实时监控特征矩阵中的连续型指标构建高斯分布模型;对所述实时监控特征矩阵中的离散型指标构建频率分布模型;将所述高斯分布模型和所述频率分布模型组合形成正常运行基线;计算所述实时监控特征矩阵与所述正常运行基线的偏离度量值;对所述偏离度量值进行加权组合得到异常评分;基于所述异常评分识别故障源节点;
基于故障传播模型,将所述故障源节点的异常评分和所述实时监控特征矩阵组合形成初始节点状态向量;将所述初始节点状态向量输入预训练的图卷积神经网络;通过图卷积层传播更新节点状态;基于更新后的节点状态计算节点间影响强度;生成故障影响传播矩阵;
计算影响范围,基于所述故障影响传播矩阵计算节点间的拓扑影响分数;结合服务调用关系计算节点间的依赖影响分数;融合历史故障数据计算节点的脆弱性影响分数;将所述拓扑影响分数、所述依赖影响分数和所述脆弱性影响分数进行加权融合;生成节点的综合风险分数;
输出预测结果,基于所述综合风险分数对微服务节点进行风险等级划分;确定高风险节点作为重点关注对象;计算各节点的预计受影响时间;生成包含风险等级、影响时间的预测结果报告;将所述预测结果报告输出用于指导故障应急响应。
6.根据权利要求1所述的方法,其特征在于,根据影响程度对受影响服务节点进行风险等级划分,并按照预设的风险阈值触发相应级别的告警信息,同时将故障传播路径可视化展示包括:采集微服务故障传播数据,所述微服务故障传播数据包括故障发生时间、故障影响范围、故障传播路径、故障传播速度、故障持续时间;
基于所述微服务故障传播数据提取影响程度特征,包括计算节点间故障传播概率、提取故障时间延迟特征、统计故障影响范围重叠度,构建故障影响特征矩阵;对所述故障影响特征矩阵进行特征降维和归一化处理,采用主成分分析方法提取关键影响因子,计算各影响因子的权重系数;
基于所述关键影响因子和所述权重系数计算每个受影响服务节点的综合影响得分,将所述综合影响得分按照预设的风险等级划分规则划分为不同风险等级;针对不同风险等级设置相应的风险阈值,当服务节点的所述综合影响得分超过对应风险等级的所述风险阈值时,触发相应级别的告警信息;
构建告警信息模板,所述告警信息模板包括故障影响范围、故障传播路径、风险等级判定依据、处理建议,基于所述告警信息模板生成标准化的告警信息;采用图形化方式展示故障传播路径,包括构建服务依赖关系图,在所述服务依赖关系图中标注故障传播方向、传播速度、影响范围。
7.基于日志分析的分布式系统故障定位诊断系统,用于实现前述权利要求1‑6中任一项所述的方法,其特征在于,包括:
第一单元,用于通过分布式系统中的服务注册中心获取所有微服务节点信息,基于应用程序接口调用链路追踪器采集各微服务节点之间的调用数据,将所述调用数据按照调用时间戳、调用方服务标识、被调用方服务标识、调用接口名称、调用参数和调用状态进行结构化存储;根据结构化存储的调用数据,采用图数据库构建服务依赖关系图,其中图节点表示微服务节点,图边表示服务间调用关系,并在所述图边上标注调用频率、平均响应时间和成功率;
第二单元,用于基于所述服务依赖关系图,针对每个微服务节点,计算其作为故障源时对其他微服务节点的影响权重,所述影响权重根据服务间调用频率、调用链路长度、服务重要程度和历史故障数据综合计算得出;采用图卷积神经网络对所述服务依赖关系图进行建模,将每个微服务节点的运行状态指标、系统资源使用情况和业务指标作为节点特征输入,构建故障传播预测模型;
第三单元,用于实时采集所述分布式系统中各微服务节点的运行状态数据,当检测到某个微服务节点出现异常时,将该异常节点作为故障源节点输入所述故障传播预测模型,基于图卷积神经网络计算故障在服务依赖关系图中的传播路径和影响范围,输出受影响服务节点列表及其影响程度;根据影响程度对受影响服务节点进行风险等级划分,并按照预设的风险阈值触发相应级别的告警信息,同时将故障传播路径可视化展示。
8.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为调用所述存储器存储的指令,以执行权利要求1至6中任意一项所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至6中任意一项所述的方法。