grafana/promql-anomaly-detection
A framework for anomaly detection using Prometheus and PromQL
解決的問題
此框架提供了一種直接在 Prometheus 內使用 PromQL 檢測時序資料異常的方法,無需依賴外部異常檢測系統。
工作原理
該系統使用一組記錄規則,為指標建立上下兩個「異常帶」。這些帶透過不同策略計算:
- 自適應策略:使用平均值與標準差,並結合平滑函數與高通濾波器,檢測短期變化,同時減少對重複事件的誤報。
- 穩健策略:使用中位數與中位數絕對偏差(MAD),以處理脈衝式或非常態分佈的資料,並檢測長期變化。
這些帶結合短期波動性、季節性(日或週模式)以及邊距帶,確保最小寬度。當指標在顯著持續時間內跨越這些帶時,告警規則將觸發。
適用對象
希望對請求率、延遲、錯誤率和資源使用率等指標實現自動化異常檢測,但又不想增加新基礎設施的 Prometheus 與 Grafana 使用者。
特點
- 無外部依賴:完全在 Prometheus/PromQL 生態系統內運行。
- 支援季節性:可適應重複的日或週模式。
- 靈活策略:根據資料分佈提供自適應與穩健兩種演算法。
- Grafana 集成:支援在時序面板上直接疊加異常帶以進行可視化。
相關
- 專案
- 專案
- 專案
- 專案
- 專案