分享自:

基于事件调用链的微服务根因定位方法

期刊:2024 the 16th international conference on communication software and networks

学术研究报告:基于事件调用链的微服务根因定位方法

一、作者及发表信息
本研究的通讯作者为西南交通大学唐山研究院的肖志明*(Zhi-ming Xiao),第一作者为西南交通大学计算机与人工智能学院的陈宇(Yu Chen),合作作者包括西南交通大学唐山研究院的滕飞(Fei Teng)。研究发表于2024年IEEE第16届国际通信软件与网络会议(ICCSN),会议论文编号DOI: 10.1109/ICCSN63464.2024.10793332。

二、学术背景
微服务系统因高度分布式特性,故障根因定位(Root Cause Localization, RCA)面临三大挑战:
1. 多模态监控数据利用不足:现有方法依赖单一数据(如日志、指标或追踪数据),难以全面捕捉故障特征。
2. 对故障数据的依赖性:传统方法需预先学习故障模式,但故障数据收集成本高且时效性差。
3. 并行请求处理的局限性:微服务并行处理多用户请求时,现有方法无法区分无关请求,导致定位准确性下降。

针对上述问题,本研究提出一种基于事件调用链(Event Call Chains)的无监督根因定位方法,通过统一日志(log)与追踪(trace)数据的表示形式,结合长短期记忆网络(LSTM)建模事件上下文关系,实现高效故障诊断。

三、研究流程与方法
1. 事件提取(Event Extraction)
- 数据来源:从正常运行的微服务系统中收集日志和追踪数据,解析日志模板(使用Drain3算法)并提取调用关系。
- 事件表示:将日志和追踪数据统一为事件序列,每个事件定义为(idi, si),其中idi为日志模板索引或调用关系ID,si为生成该事件的服务。
- 优势:无需额外监控数据配置,兼容现有微服务系统。

  1. LSTM事件预测模型

    • 模型结构:嵌入层→双层LSTM→全连接层→Softmax归一化层。
    • 训练目标:给定长度为l的事件序列,预测后续k个最可能事件及其概率。
    • 概率归一化:通过对数函数降低高概率事件间的差异,确保并行事件的均衡处理(公式5)。
  2. 事件调用链构建(Algorithm 1 & 2)

    • 输入:诊断阶段的事件序列,过滤无索引事件以模拟未知故障。
    • 核心算法
      • Algorithm 1:从每个事件出发,基于预测概率集pnor构建可能的事件链,通过阈值problim it筛选候选事件。
      • Algorithm 2:当事件链无法完整连接时,添加外部事件补全链条,这些事件可能对应故障导致的缺失调用。
    • 输出:多组可能的事件调用链集合L
  3. 根因排序与输出

    • 评分机制:根据事件链内外部事件得分(公式7-9)排序,优先选择得分最高的链条。
    • 根因集生成
      • 候选根因集(R1):外部事件中调用方已出现在序列的服务。
      • 外部根因集(R2):调用方未出现的服务。
      • 现有根因集(R3):反向查询内部事件对应的服务。

四、实验结果
1. 数据集
- D1(GAIA):包含5类微服务的10个实例故障(如登录超时、数据库错误)。
- D2(Online Boutique):基于Nezha的Hipster数据集,涵盖7类故障(如前端异常、验证错误)。

  1. 对比方法:包括Trace Anomaly(基于追踪)、Nezha(多模态)、DiagFusion(监督学习)等。
  2. 评价指标
    • A@k:前k个结果中包含真实根因的概率。
    • Avg@k:前k个A@k的平均值。
  3. 关键结果
    • 在D1和D2上,本方法的Avg@3分别达到98.6%和89.6%,较最优对比方法提升18.08%和20.43%。
    • 单模态测试:仅用日志或追踪数据时,D1性能仍优异(Avg@3=90.3%),但D2因调用关系复杂性能下降,凸显多模态统一表示的必要性。
    • 诊断时间:在线阶段单故障诊断仅需0.10秒(D1)和0.18秒(D2),显著快于Nezha(40.32秒)和DiagFusion(15.03秒)。

五、结论与价值
1. 科学价值
- 提出事件驱动的多模态数据统一表示方法,克服了异构数据建模难题。
- 通过无监督LSTM建模动态事件链构建,解决了并行请求干扰问题。
2. 应用价值
- 无需依赖历史故障数据,可定位未知故障,适用于生产环境实时诊断。
- 开源数据集和算法为后续研究提供基准。

六、研究亮点
1. 创新方法:首次将事件调用链与LSTM概率预测结合,支持多层级根因推理。
2. 工程友好性:仅需日志和追踪数据,降低系统改造成本。
3. 高效性:通过离线训练LSTM模型,在线诊断时间缩短至亚秒级。

七、其他发现
实验表明,外部事件(由Algorithm 2生成)对根因定位贡献率达73%,验证了故障常表现为调用链断裂的假设。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com