OpenResty XRay 异常事件

异常事件触发

OpenResty XRay 会采集应用的 CPU 使用率、内存使用率和磁盘写入 IO 等监控指标,如果监控指标的波动幅度达到阈值,就会产生异常事件并触发分析器执行。

异常事件的判断我们参考了 3σ 法则,具体规则如下:

  1. 当前值和 60 秒内的均值的差值绝对值要大于设定的最小变化量
  2. 当前值和 60 秒内的均值的差值绝对值要大于设定的 n 倍标准差
  3. 当前应用没有正在运行的分析器任务

当符合这些条件后,就会产生一条异常事件触发分析器运行。

我们默认配置了一些常用分析器的触发规则:

可以添加自定义分析器触发运行的规则:

还可以调整事件触发的阈值:

为了不错过异常事件,事件发生后就会立即触发分析器运行采集,但这样会产生很多由指标毛刺触发的无效采集任务,所以我们在事件产生的四秒之后会再次进行判断,如果这四秒内的值都符合条件,则标记该事件为有效。

无效事件默认不会展示在事件列表中,可以通过这个开关展示所有捕获到的异常事件:

异常事件通知

我们提供了 email 和 Webhook 两种通知方式,配置了事件通知之后,当有异常事件产生就会及时通知用户。