ローカルタイムゾーンを考慮して異常検知モニターを更新する方法

Datadog のモニターは UTC 時間を使用しており、デフォルトではローカルタイムゾーンを追跡しません。システムの種類によっては、タイムゾーンで起きているローカルな活動によってデータが影響を受ける可能性があります。たとえば、昼休みにランチが急増し、この急増が予期せぬ異常として検出される可能性があります。ローカルな活動によって予期しない異常が発生する場合、ローカルタイムゾーンを考慮するように異常検知モニターを更新してください。

Agile または Robust 異常検知アルゴリズムを Weekly または Daily 季節性と共に使用する場合は、API と UI の両方でローカルタイムゾーンを考慮するように異常検知モニターを更新できます。

以下は、ローカルタイムゾーンを考慮した設定にする前のモニターの例です。

DST 追跡がオフ

以下は、サマータイムを考慮した場合のモニターの例です。

DST 追跡がオン

UI

UI でローカルタイムゾーンを考慮して異常検知モニターを更新するには、UI の Create a new monitor > Anomaly monitor セクションに移動します。セクション 3 の Set Alert Conditions で、Advanced パネルを開き、モニターの評価中にサマータイムを考慮するスイッチをオンに切り替えます。次に、タイムゾーンドロップダウンを追跡したいタイムゾーンに合わせます。

UI の DST 追跡

API

  1. モニター API で更新リクエストを行うには、次の情報が必要です。
  1. anomalies() 関数の呼び出しに timezone 引数を追加して、更新版のモニタークエリを作成します。
  • 例えば、上に示したクエリをニューヨークの現地時間を使うように変更したい場合、クエリは次のように更新されます。

    avg(last_4h):anomalies(avg:system.cpu.user{role:trace-cassandra} by {host}, 'basic', 2, direction='both', alert_window='last_15m', interval=60, count_default_zero='true', timezone='America/New_York') >= 1
    
  1. モニターの定義を更新するには、Edit a Monitor API を使用します。
  • Python、Ruby、cURL の例があります。
  • 既存の設定をオーバーライドしないように、ID とクエリのみをリクエストに含めます。名前、メッセージ、オプション、タグは必須ではありません。

その他の参考資料