Datadog Anomaly Monitorの活用事例
株式会社カンリー / yyoosshh
メンバー / SRE / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
利用機能 | ツールの利用規模 | 事業形態 |
---|---|---|
Monitors | 11名〜50名 | B to B |
利用機能 | Monitors |
---|---|
ツールの利用規模 | 11名〜50名 |
事業形態 | B to B |
導入の背景・解決したかった問題
導入背景
ツール導入前の課題
カンリーではマルチプロダクトの運用をしています。
その中の BtoBtoC向けプロダクトにおいて、DatadogのLog Anomaly Monitor(検知対象はログ量)を運用していたところ、毎週特定の日時にアラート通知が繰り返される現象が見られました。
これにより、連携しているSlackのアラートチャンネルに通知が頻発する状態になり、本来はログ量の急上昇を検知するためのアラートが 毎週同じ時間帯に鳴ってしまうノイジーアラート となっていました。
どのような状態を目指していたか
目指したのはノイジーアラート解消とアラートの信頼性向上が実現され、本来の健全な監視環境が整った状態です。
具体で言うと下記が整っていると健全な監視環境といえると考えていますが、
項番2の「どうズレたら発報するのか」の部分で深掘りができておらず、精緻な設定がしきれていませんでした。
- このアラートは "何を守るため" に存在しているのかを明確にする
- 正常状態は何か / どうズレたら発報するのか(閾値・季節性の理屈)
- 発報がされたら "今すぐ何をするか" を定義
導入の成果
改善したかった課題はどれくらい解決されたか
- 週次で繰り返すノイジーアラートは、運用上ほぼ解消。
- 月曜朝の正常スパイクを"異常"扱いしない設計に切り替え、「確認→スルー」の悪循環を断ち切れた。
- Slackのチャンネルが静かになり、重要な通知に集中できる環境が整備された。
どのような成果が得られたか
アラート設計の適合性向上:前日比(Daily)→同曜日・同時刻比(Weekly)へ。プロダクト特性と判断基準が一致。
運用の集中度向上:アラートチャンネルが静穏化し、対応が必要な通知へ集中。オンコールの心理的負担と判断コストを低減。
説明可能性の確立:「どのズレを異常とみなすか」を明文化し、レビューの意思決定がスムーズに。
IaCによる再利用性:Terraformで
Seasonality
(デフォルトdaily
)等を外部変数化し、プロダクトの特性に応じて選択可能な状態へ。標準化の前進:Seasonality選定ガイドを整備し、アラート設計標準化を推進。
ノイズ削減の実績
- 週次で再発していたノイズアラートは 約80%削減。
* アラート件数の推移(実データ)
* 5/1〜6/2(週次比較前):16件(主に月曜0時台に集中)
* 6/3〜6/10(切り替え直後):9件(`weekly` への変更の学習期間でやや残存)
* 6/11〜6/14(学習反映後):2件(大幅減少)
導入に向けた社内への説明
上長・チームへの説明
まず目的を「週次で同時刻に繰り返し発生するノイジーアラートを解消し、監視・検知の品質を上げること」と明確化しました。
現状の Seasonality=daily
の前日比判定のままでは、BtoBtoC特性による月曜の正常スパイクが“異常”として扱われ、Slackが恒常的に騒がしくなっている点を共有しました。
原因は「曜日差のある利用パターン」と「前日比というSeasonality(季節性)」のミスマッチであり、 打ち手としては下記の2点と説明しました。
- Seasonality(季節性)を weekly(同曜日・同時刻比) へ切り替えること
- Terraformモジュールの拡張による Seasonality / algorithm の外部変数化(プロダクト特性で上書き可能)
活用方法
よく使う機能
- Log Anomaly
ツールの良い点
- 固定しきい値が不要で、プロダクトごとの利用パターンの変動に強い異常検知が可能。
Seasonality(季節性)
とalgorithm
を調整するだけで、プロダクト特性に素早くフィットさせることができる。- IaC(Terraform)で標準化・差分管理・横展開が容易。
ツールの課題点
- プロダクト特性に合わない
Seasonality(季節性)
を選ぶとノイズ増に直結する(今回の学び)。 - 利用パターン学習期間中はアラートが一時的に残存するため、開発者の期待値コントロールが必要。
algorithm
/alert_window
/above, below
など調整パラメータが多く、最適化に知見が要る。
ツールを検討されている方へ
プロダクトの特性に応じて、Seasonality(季節性)の選定が必要なのでプロダクトを利用するユーザー動向の理解が必要です。
Seasonality(季節性) の選定基準
hourly
:毎時、明確なピーク/ボトムが存在する(例:hh:15, hh:30 で処理が集中する等)daily
:日次で安定(前日同時刻比較が妥当)weekly
:曜日差が大きい(例:月曜朝だけ突出して伸びる BtoC/BtoBtoC、土日注文が増えるモバイルオーダーなど)
運用上のコツ
- 切り替え直後は学習期間(1〜数週)の残存アラートを前提に観察。
- キャンペーン/リリース等でベースラインが動くときはレビューを定例化。
株式会社カンリー / yyoosshh
メンバー / SRE / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
よく見られているレビュー
株式会社カンリー / yyoosshh
メンバー / SRE / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
レビューしているツール
目次
- 導入の背景・解決したかった問題
- 活用方法