OpenResty XRay 異常事件
異常事件觸發
OpenResty XRay 會採集應用的 CPU 使用率、記憶體使用率和磁碟寫入 IO 等監控指標,如果監控指標的波動幅度達到閾值,就會產生異常事件並觸發分析器執行。
異常事件的判斷我們參考了 3σ 法則,具體規則如下:
- 當前值和 60 秒內的均值的差值絕對值要大於設定的最小變化量
- 當前值和 60 秒內的均值的差值絕對值要大於設定的 n 倍標準差
- 當前應用沒有正在執行的分析器任務
當符合這些條件後,就會產生一條異常事件觸發分析器執行。
我們預設配置了一些常用分析器的觸發規則:
可以新增自定義分析器觸發執行的規則:
還可以調整事件觸發的閾值:
為了不錯過異常事件,事件發生後就會立即觸發分析器執行採集,但這樣會產生很多由指標毛刺觸發的無效採集任務,所以我們在事件產生的四秒之後會再次進行判斷,如果這四秒內的值都符合條件,則標記該事件為有效。
無效事件預設不會展示在事件列表中,可以透過這個開關展示所有捕獲到的異常事件:
異常事件通知
我們提供了 email 和 Webhook 兩種通知方式,配置了事件通知之後,當有異常事件產生就會及時通知使用者。