これは何
「今の開発組織でトライしたこと・トライしていること・トライしようとしていること」の記事投稿キャンペーンに関する記事です。
私達のチームでは、毎朝DatadogのDashboardを確認して、サービスに関する各種メトリクスや、アラート状態をチェックしています。
私がチームにJoinをしたときから、すでにDashboardやアラート設定は存在していたのですが、以下のような課題もありました。
1. 定期的にアラートが発火するが、対応されていないものがある
2. アラートが定期的に流れて来て、通知をすべて追いきるのが大変
このように、一度Dashboardやアラートを作成しても、定期的に見直していかないと活用するのが大変になってしまいます。
また、個人的には以下のような課題もありました。
3. それぞれのメトリクスがどういう指標で表示されているか分かっていない
4. アラートのしきい値の基準がどういう理由で決まっているかが分かっていない
5. メトリクスが普段と違う動きをしたときに、何をすればいいのかが分からない
チームとして取り組んでいること
このような課題に対して、(元々行っていたものもありますが) 以下のようなことを行っています。
- Monitorの優先度(Priority)を決める
- WarningやAlertになったものについて、どのくらいの温度感で対応するかなど
- 通知が必要かどうかを見直す。問題がないときにはアラートが飛ばないようにする
- 気になる動きをしたメトリクスについては、詳しく調べながら、メトリクスの見直しも行う
定期的にアラートの内容を確認し、議論をしながら、より効率的に運用できるように改善しています。
毎朝見ていても上記のような見直しをするとなると時間がかかってしまうので、毎週1回この見直しをする時間を意図的に確保するようにしました。
個人として取り組んでいること
個人としては、上記の「3」を特に力を入れています。
この際に特に気をつけていることとしては、「調べた内容をドキュメントに残すこと」と「アラート状態になったときの対応を検討すること」です。
調べた内容をドキュメントに残すこと
Dashboardの作成に関わっていないのもあり、1つ1つのメトリクスが指す定義をきちんと理解できていません。その状態だと、普段と違う動きをしたときに、どう対応すればいいのかが分からないということがよくあります。
そのため、定義を理解していないメトリクスについては、積極的に調べてドキュメントにまとめます。また、どういう手順で関連調査を行い、どういう対応をしたのかの過程も記録に残しています。これにより、次回同じアラートが起きた際にスムーズに対応できるようになります。
アラート状態になったときの対応を検討すること
アラート設定を見直す際には、アラート状態になった際にはどのようなアクションを取るのかをセットで考える必要があると考えています。
ただしきい値だけ変更してアラートがならないようにするだけだと、アラート設定している意味がなくなってしまいます。
どう対応するかの部分については工数や優先度の兼ね合いもあり、この部分はまだやりきれいていない部分なので、次の課題だと考えています。
まとめ
- チームとして、アラート設定について見直すタイミングを毎週意図的に作り、アラート通知に疲弊しないように改善をしている
- 各メトリクスについて理解度を深めて、どんな対応をすべきかを明確にしていくことで、アラートにスムーズに対応できるようにしている