- 重要な情報
- アプリ内
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
Datadog Incident Management は、メトリクス、トレース、またはログで発見した問題の追跡とコミュニケーションに役立ちます。
このガイドでは、Datadog アプリを使用してインシデントを宣言する、調査と修復の進行に合わせてインシデントを更新する、およびインシデントが解決したときに事後分析を生成する方法について説明します。この例では、Slack インテグレーションが有効になっていることを前提としています。
シナリオ: エラーが大量に発生し、いくつかのサービスが遅延している可能性があるとモニターから警告されたと仮定します。お客様に影響が出ているかどうかは不明です。
このガイドでは、Datadog クリップボードを使ってインシデントを宣言する方法を説明します。
Ctrl/Cmd + Shift + K でクリップボードを開きます。
クリップボードを使うと、グラフ、モニター、ダッシュボード全体、またはノートブックなど、さまざまなソースから情報を収集することができます。これにより、インシデントを宣言する際に可能な限り多くの情報を収集することができます。
このガイドでは、System - Metrics ダッシュボードからクリップボードにコピーするグラフを選択します。
画面左側の Datadog メニューで、Dashboard > Dashboard lists に進み、System - Metrics を選択します。
グラフのひとつにカーソルを合わせ、クリップボードにコピーします。
a. Ctrl/Cmd + C を使用するか、
または
b. グラフ上で Export アイコンをクリックして Copy を選択します。
画面左側の Datadog メニューで Monitors > Manage Monitors を開き、[Auto] Clock in sync with NTP を選択します。
Add current page をクリックしてモニターをクリップボードに追加します。
Select All、Add Selected Items To… の順にクリックします。
New Incident を選択します。
発生している事象について説明します。
重大度 | お客様に影響があるかどうか、また関連するサービスにどのような影響があるかが不明であるため、Unknownに設定します。各重大度の意味については、アプリ内の説明を参照し、チームのガイドラインに従ってください。 |
タイトル | インシデントのタイトルは、チームで使用している命名規則に従って設定します。これは実際のインシデントではないため、テストインシデントであることが明確になるよう TEST という言葉を含めます。タイトルの例: [TEST] My incident test |
シグナル | シグナルとは、インシデントを宣言する理由のことです。グラフやログ、その他のキービジュアルなどがこれに該当します。選択したグラフとモニターはすでに含まれていますが、その他のシグナルを追加することができます。例えば、このガイドの URL をコピーして、Ctrl/Cmd + V で追加します。 |
インシデントコマンダー | 今回のテストではあなたに割り当てられたままにしてください。実際のインシデントが発生した場合はインシデント調査のリーダーに割り当てられます。インシデントの進行状況に合わせてインシデントコマンダーを更新することができます。 |
その他の通知 | 今回のテストでは、他のメンバーや他のサービスに警告を出さないよう空白にしておきます。 実際のインシデントでは、調査や修復のために通知すべき人やサービスを追加します。これらの通知は Slack や PagerDuty にも送信できます。 |
Declare Incident をクリックしてインシデントを作成します。
また、グラフ、モニター、またはインシデント APIからインシデントを宣言することもできます。APM ユーザーの場合、APM グラフ上の Siren アイコンをクリックしてインシデントを宣言できます。
Slack インテグレーションの一環として、/datadog incident
ショートカットを使ってインシデントを宣言し、タイトル、重大度、顧客への影響を設定することもできます。
インシデントが作成された後、右上の Notify ボタンをクリックして通知を追加することができます。
インシデントページの左上にある Open Slack Channel をクリックすると、インシデントの Slack チャンネルに移動します。
新しいインシデントが発生すると、そのインシデント専用の新しい Slack チャンネルが自動的に作成され、チームとのコミュニケーションをそこに集約してトラブルシューティングを開始することができます。所属するオーガニゼーションの Slack インテグレーションがグローバルなインシデントチャンネルを更新するよう設定されている場合は、そのチャンネルが新しいインシデントで更新されます。
この例では、新しいインシデントチャンネルに追加されたのはあなたのユーザーのみです。実際のインシデントで「Additional Notifications」に人やサービスを追加すると、その全員が自動的にインシデントチャンネルに追加されます。
Slack インテグレーションが有効になっていない場合は、Link to Chat をクリックして、インシデントに関するやり取りに使用しているチャットサービスへのリンクを追加します。
また、Link Video Call を使って、インシデントに関する議論が行われているコールへのリンクを追加することもできます。
インシデントのページには、Overview, Timeline, Remediation, and Communication という 4 つの主なセクションがあります。インシデントの進行に合わせてこれらのセクションを更新し、全員に現在の状況を知らせます。
シナリオ: いくつか調査を行った結果、根本的な原因はホストのメモリ不足であることがわかりました。また、一部のお客様が影響を受けており、ページの読み込みが遅くなっているとの情報も得ました。15 分前に最初のお客様からの報告があり、インシデントのレベルは SEV-3 です。
Overview セクションで、調査が進むにつれてインシデントのフィールドや顧客の影響を更新することができます。
重大度レベルと根本原因を更新する:
Overview タブをクリックします。
Properties ボックスで Edit をクリックします。
Severity ドロップダウンをクリックして SEV-3 を選択します。
Root Cause フィールドに値を追加します: TEST: Host is running out of memory.
この問題についてはモニターから最初に警告を受けたため、Detection ドロップダウンで Monitor を選択します。
Save をクリックしてプロパティを更新します。
Slack から、/datadog incident update
コマンドを使って進行中の問題のタイトル、重大度、ステータスを更新することもできます。
顧客への影響を更新する:
Impact ボックスで Edit をクリックします。
Customer impact ドロップダウンで Yes を選択します。
タイムスタンプを 15 分前に変更します。これは、最初の顧客レポートが入ってきたタイミングを表します。
Scope of impact に値を追加します: TEST: Some customers seeing pages loading slowly.
Save をクリックしてフィールドを更新します。
インシデントページの上部には、顧客への影響がどのくらい継続しているかが表示されます。Overview ページで行われたすべての変更は、Timeline に追加されます。
Timeline には、インシデントのフィールドや情報の追加・変更が時系列で表示されます。
Timeline タブをクリックします。
Content Type、Important、Responder の各フィルターを使用して、特定のタイプのイベントを表示することができます。
Customer impact updated イベントを見つけ、旗のアイコンをクリックして「重要」とマークします。
イベントを「重要」とマークしておくことで、インシデントが解決した後に事後分析を作成する際に、「重要」とマークされたタイムラインイベントのみを含めるよう選択することができます。
タイムラインにメモを追加します: I found the host causing the issue.
メモのイベントにカーソルを合わせて鉛筆アイコンをクリックし、ノートのタイムスタンプを変更します。これは、問題の原因となっているホストを 10 分前に実際に見つけたためです。
メモを重要としてマークします。
Open 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 セクションにインシデント発生後のタスクを追加して、それらを管理することもできます。
シナリオ: 問題が軽減され、チームは状況を監視しています。インシデントのステータスは安定しました。
Communications セクションで、インシデントのステータスを更新する通知を送信することができます。
Overview セクションに戻ります。
Properties ボックスで Edit をクリックし、ステータスを stable に変更します。
保存をクリックします。
Communications タブに移動します。
New Communication をクリックします。
デフォルトのメッセージには、件名にインシデントのタイトル、本文にインシデントの現在のステータスに関する情報が含まれています。
実際のインシデントでは、インシデントに関わった人たちに最新情報を送信します。今回の例では、自分だけに通知を送ります。
Add recipients に自分自身を追加します。
Send をクリックします。
メッセージが記載されたメールが届きます。
Manage Templates > New Template をクリックして、カスタマイズしたテンプレートを作成することができます。Category フィールドを使用してテンプレートをグループ化します。
シナリオ: 問題による顧客への影響も解消し、問題が解決したことが確認されました。チームは問題を振り返るために事後調査を希望しています。
Overview セクションを移動します。
Impact ボックスの Edit をクリックして、顧客の影響を更新します。
Active スイッチを切り替えて、アクティブでない状態にします。
それ以前に顧客への影響が発生していた場合は、終了日時を変更することもできます。
インシデントのステータスを更新するには、Properties ボックスの Edit をクリックします。
ステータスを 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 をクリックします。