摘要

在运行时检测分布式系统内所产生的故障需要事先获得故障特征模型.构造故障特征模型的常见做法为将故障注入系统并根据随后系统内所产生的特征症状(如异常事件日志)建模.已有建模方法通常使用从故障发生到给定时间窗口之内的特征症状.然而,根据真实系统观察,不同故障的传播影响时间相差很大,且故障特征会在故障传播过程中发生改变.因此,已有方法对检测时间窗口之后发的故障特征症状不能识别或会产生大量错误报警.为了解决此问题,文中提出一种基于故障注入测试的故障特征提取方法,该方法主要由3步组成:(1)过滤噪声日志;(2)构造1个故障识别器识别不同故障的早期特征;(3)为每类故障构造限状态追踪器追踪该故障的后期传播状态,从而在故障被识别出来后持续跟踪故障传播状态.通过在企业级云计算系统中进行实验验证,与已有方法相比该文方法具备更高的故障检测精确度.