grafana/promql-anomaly-detection

A framework for anomaly detection using Prometheus and PromQL

何を解決するか

このフレームワークは、Prometheus内でPromQLを使用して時系列データの異常を検出する方法を提供し、外部の異常検出システムの必要性を排除します。

動作方法

このシステムは、メトリクスの周囲に上位および下位の「異常帯」を生成するためのレコーディングルールのセットを使用します。これらの帯は、以下の戦略を使用して計算されます:

  • 適応戦略:平均と標準偏差を平滑化関数およびハイパスフィルタで使用し、短期的な変化を検出しながら、繰り返しイベントによる誤検出を低減します。
  • ロバスト戦略:中央値と中央絶対偏差(MAD)を使用して、スパイキーまたは正規分布でないデータを処理し、長期的な変化を検出します。

これらの帯は短期的な変動性、季節性(日次または週次パターン)、およびマージン帯を組み合わせて、最小幅を保証します。アラートルールは、メトリクスがこれらの帯を有意な期間にわたって越えたときにトリガーされます。

対象ユーザー

リクエストレート、レイテンシ、エラーレート、リソース使用率などのメトリクスに対して、新しいインフラストラクチャを追加せずに自動異常検出を実装したいPrometheusおよびGrafanaのユーザー。

特徴

  • 外部依存なし:Prometheus/PromQLエコシステム内で完全に動作します。
  • 季節性対応:日次または週次のパターンに適応します。
  • 柔軟な戦略:データの分布に応じて適応的およびロバストなアルゴリズムを提供します。
  • Grafana統合:時系列パネルに直接異常帯を重ねて可視化するサポートを提供します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト