選択した Datadog サイト () では Incident Management は利用できません。
概要
Datadog Incident Management は、メトリクス、トレース、またはログで発見した問題の追跡とコミュニケーションに役立ちます。
このガイドでは、Datadog サイトを使用してインシデントを宣言する、調査と修復の進行に合わせてインシデントを更新する、およびインシデントが解決したときに事後分析を生成する方法について説明します。この例では、Slack インテグレーションが有効になっていることを前提としています。
インシデント管理のプロセス: 問題の検知から解決まで
インシデントの宣言
シナリオ: エラーが大量に発生し、いくつかのサービスが遅延している可能性があるとモニターから警告されたと仮定します。お客様に影響が出ているかどうかは不明です。
このガイドでは、Datadog クリップボードを使ってインシデントを宣言する方法を説明します。クリップボードを使うと、グラフ、モニター、ダッシュボード全体、またはノートブックなど、さまざまなソースから情報を収集することができます。これにより、インシデントを宣言する際に可能な限り多くの情報を収集することができます。
- Datadog で Dashboard List に移動し、System - Metrics を選択します。
- グラフのひとつにカーソルを合わせ、次のいずれかのコマンドを使用してクリップボードにコピーします。
- Ctrl/Cmd + C
- グラフ上で Export アイコンをクリックして Copy を選択します。
- 左側の Datadog メニューから Monitors > Monitors List に進み、[Auto] Clock in sync with NTP を選択します。
- Ctrl/Cmd + Shift + K でクリップボードを開きます。
- クリップボードの Add current page をクリックして、モニターをクリップボードに追加します。
- Select All、*Export items to… の順にクリックします。
- Declare Incident を選択します。
- 発生している事象について説明します。
| |
---|
タイトル | インシデントのタイトルは、チームで使用している命名規則に従って設定します。これは実際のインシデントではないため、テストインシデントであることが明確になるよう TEST という言葉を含めます。タイトルの例: [TEST] My incident test |
重大度 | お客様に影響があるかどうか、また関連するサービスにどのような影響があるかが不明であるため、Unknownに設定します。各重大度の意味については、アプリ内の説明を参照し、チームのガイドラインに従ってください。 |
インシデントコマンダー | 今回のテストではあなたに割り当てられたままにしてください。実際のインシデントが発生した場合はインシデント調査のリーダーに割り当てられます。インシデントの進行状況に合わせてインシデントコマンダーを更新することができます。 |
- Declare Incident をクリックしてインシデントを作成します。
また、グラフ、モニター、またはインシデント API からインシデントを宣言することもできます。APM ユーザーの場合は、APM グラフ上の任意のインシデントアイコンをクリックしてインシデントを宣言できます。
Slack インテグレーションの一環として、
/datadog incident
ショートカットを使ってインシデントを宣言し、タイトル、重大度、顧客への影響を設定することもできます。 - インシデントページの左上にある Slack Channel をクリックすると、インシデントの Slack チャンネルに移動します。
新しいインシデントが発生すると、そのインシデント専用の新しい Slack チャンネルが自動的に作成され、チームとのコミュニケーションをそこに集約してトラブルシューティングを開始することができます。所属するオーガニゼーションの Slack インテグレーションがグローバルなインシデントチャンネルを更新するよう設定されている場合は、そのチャンネルが新しいインシデントで更新されます。
Slack インテグレーションが有効になっていない場合は、Add Chat をクリックして、インシデントに関するやり取りに使用しているチャットサービスへのリンクを追加します。
インシデントに関する議論が行われているコールへのリンクを追加するには、Add Video Call をクリックします。
トラブルシューティングとインシデントの更新
インシデントページには、Overview、Timeline、Remediation、Notifications という 4 つの主なセクションがあります。インシデントの進行に合わせてこれらのセクションを更新し、全員に現在の状況を知らせます。
概要
シナリオ: いくつか調査を行った結果、根本的な原因はホストのメモリ不足であることがわかりました。また、一部のお客様が影響を受けており、ページの読み込みが遅くなっているとの情報も得ました。15 分前に最初のお客様からの報告があり、インシデントのレベルは SEV-3 です。
Overview セクションで、調査が進むにつれてインシデントのフィールドや顧客の影響を更新することができます。
重大度レベルと根本原因を更新する:
- Severity ドロップダウンをクリックして SEV-3 を選択します。
- この問題についてはモニターから最初に警告を受けたため、What happened の Detection Method ドロップダウン (Unknown が選択されています) で Monitor を選択します。
- Why it happened フィールドに値を追加します:
TEST: Host is running out of memory.
- Save をクリックしてプロパティを更新します。
Slack から、
/datadog incident update
コマンドを使って進行中の問題のタイトル、重大度、ステータスを更新することもできます。
顧客への影響を追加する:
- Impact セクションで + Add をクリックします。
- タイムスタンプを 15 分前に変更します。これは、最初の顧客レポートが入ってきたタイミングを表します。
- descriptions フィールドに値を追加します:
TEST: Some customers seeing pages loading slowly.
- Save をクリックしてフィールドを更新します。Impact セクションが更新され、顧客への影響がどのくらい継続しているかが表示されます。Overview ページで行われたすべての変更が Timeline に追加されます。
沿革
Timeline には、インシデントのフィールドや情報の追加・変更が時系列で表示されます。
- Timeline タブをクリックします。
- Impact added イベントを見つけ、旗のアイコンをクリックして「重要」としてマークします。
- タイムラインにメモを追加します:
I found the host causing the issue.
- メモのイベントにカーソルを合わせて鉛筆アイコンをクリックし、ノートのタイムスタンプを変更します。これは、問題の原因となっているホストを 10 分前に実際に見つけたためです。
- メモを重要としてマークします。
- Slack Channel をクリックして、インシデントの Slack チャンネルに戻ります。
- チャンネルに
I am working on a fix.
(修正対応中) とメッセージを投稿します。 - メッセージのアクションコマンドアイコン (メッセージにカーソルを合わせたときに右に表示される 3 点ドット) をクリックします。
- Add to Incident を選択してタイムラインにメッセージを送信します。
インシデントチャンネル内の Slack コメントはタイムラインに追加できるため、インシデントの調査や軽減に関わる重要なコミュニケーションをまとめることができます。
修復
シナリオ: この種の問題の対処法についてのノートブックがあり、そこに問題を解決するために必要なタスクが含まれています。
Remediation セクションでは、問題の調査やインシデント発生後の修復タスクについてのドキュメントやタスクを記録することができます。
- Remediation タブをクリックします。
- Documents ボックスのプラスアイコン
+
をクリックして、Datadog ノートブックへのリンクを追加します。Documents セクションの更新内容はすべて、Incident Update タイプとしてタイムラインに追加されます。 - Incident Tasks ボックスにタスクの説明を追加して、タスクを追加することができます。例:
Run the steps in the notebook.
- Create Task をクリックします。
- Assign To をクリックして自分自身をタスクに割り当てます。
- Set Due Date をクリックして日付を今日に設定します。
タスクの追加や変更はすべて Timeline に記録されます。
また、Remediation セクションにインシデント発生後のタスクを追加して、それらを管理することもできます。
通知
シナリオ: 問題が軽減され、チームは状況を監視しています。インシデントのステータスは安定しています。
Notifications セクションで、インシデントのステータス更新を伝える通知を送信することができます。
- Overview セクションに戻ります。
- ロップダウンメニューで、ステータスを ACTIVE から STABLE に変更します。
- Notifications タブに移動します。
- New Notification をクリックします。
デフォルトのメッセージには、件名にインシデントのタイトル、本文にインシデントの現在のステータスに関する情報が含まれています。
実際のインシデントでは、インシデントに関わった人たちに最新情報を送信します。今回の例では、自分だけに通知を送ります。
- Recipients フィールドに自分自身を追加します。
- Send をクリックします。
メッセージが記載されたメールが届きます。
カスタマイズしたメッセージテンプレートを作成することができます。Category フィールドを使用してテンプレートをグループ化します。
解決と事後分析
シナリオ: 問題による顧客への影響も解消し、問題が解決したことが確認されました。チームは問題を振り返るために事後調査を希望しています。
- Overview セクションを移動します。
- ステータスを STABLE から RESOLVED に変更して、アクティブでない状態にします。顧客への影響がそれ以前に終了していた場合は、終了日時を変更することもできます。
- インシデントのステータスが解決済みに設定されると、画面上部に Generate Postmortem ボタンが表示されます。Generate Postmortem をクリックします。
- タイムラインセクションで Marked as Important (重要としてマーク) を選択すると、_重要な_イベントのみが事後分析に追加されます。
- Generate をクリックします。
事後分析は Datadog ノートブックとして生成され、調査と修復の際に参照されたタイムラインイベントとリソースが含まれます。これにより、問題の原因や今後の予防方法を簡単に確認し、さらに文書化することができます。Datadog ノートブックはライブコラボレーションをサポートしているため、リアルタイムでチームメンバーと共同編集を行うことができます。
問題の再発を防ぐためにあなたおよびチームが完了しなければならないフォローアップタスクがある場合は、それらを追加して、Remediation の Incident Tasks セクションで追跡します。
インシデント管理のワークフローをカスタマイズ
Datadog Incident Management はオーガニゼーションのニーズに基づいて、異なる重大度とステータスレベルでカスタマイズすることはもちろん、インシデントに関連する APM サービスやチームなどの追加情報も含めることができます。詳細については、Incident Management ページのこちらのセクションを参照してください。
また、通知のルールを設定して、インシデントの重大度レベルに応じて特定の人やサービスに自動的に通知することもできます。詳しくは、インシデント設定のドキュメントをご覧ください。
Incident Management をカスタマイズするには、インシデント設定ページにアクセスします。画面左側の Datadog メニューから、Monitors > Incidents (Incident Management のウェルカム画面が表示されたら、Get Started をクリックします) に進みます。そして、画面上部の Settings をクリックします。
モバイルでインシデントを作成・管理
Apple App Store と Google Play Store で提供されている Datadog モバイルアプリでは、Datadog アカウントでアクセスできるすべてのインシデントを作成、表示、検索、フィルターできるため、ノートパソコンを開かずに迅速に対応・解決することができます。
また、インシデントの宣言と編集、Slack や Zoom などとのインテグレーションにより、チームへの迅速なコミュニケーションも可能です。
その他の参考資料