概要

Error Tracking Explorer における Issue の詳細

Error Tracking Explorer では、Issue の表示、フィルタリング、調査が行えます。Issue とは、同じバグに紐づく類似エラーをまとめたグループです。Datadog は、エラー タイプ、エラー メッセージ、スタック トレースなどの属性をもとに各エラーのフィンガープリントを計算して Issue を作成します。フィンガープリントが同じエラーは、同一の Issue としてグループ化されます。

Issue を探索する

Error Tracking Explorer に表示される各項目は Issue です。Issue には、次のようなエラーの概要情報が含まれます:

  • エラー タイプとエラー メッセージ
  • 根本となるエラーが発生したファイルへのパス
  • Issue のライフサイクルに関する重要情報:
    • 最初に検出された日時と最後に検出された日時
    • 発生回数の推移グラフ
    • 選択した期間における発生回数

また、Issue には次のタグが付きます:

  • New: Issue が 2 日未満前に初めて検出され、状態が FOR REVIEW の場合 (詳細: Issue の状態)
  • Regression: Issue が RESOLVED だったものの、新しいバージョンで再発した場合 (詳細: Regression Detection)
  • Crash: アプリケーション クラッシュが発生した場合
  • Suspected Cause が付与されている場合

時間範囲

Error Tracking の時間範囲

Explorer の右上には、タイム ラインとして時間範囲が表示されます。この機能により、選択した期間内にエラー発生がある Issue のみを表示できます。時間範囲は、ドロップダウンからプリセットの範囲を選択して変更します。

並び替え

リスト内の Issue は、次のいずれかの方法で並び替えできます:

  • Relevance: 複数の特性を組み合わせて、コードに関係するもの、最近のもの、急増しているものを優先表示します。Error Tracking は、Issue の経過時間、直近 1 日の発生回数、直近 1 時間の目立った増加、アプリケーション クラッシュを引き起こしたかどうかを分析します。
  • Count: 選択した時間範囲における総発生回数で並び替えます。
  • Newest: 初めて検出された日時が新しい順に並び替えます。
  • Impacted Sessions: 影響を受けた RUM セッション 数で並び替えます。

ファセット

Error Tracking のファセット

Error Tracking は、Issue からあらかじめ定義された属性を自動でインデックス化し、ファセットを作成します。ファセットでは、選択した期間における属性のユニークな値を一覧表示し、該当する Issue 数などの簡易的な分析情報も確認できます。Facet を使うと、指定した属性で Issue を絞り込んだり、切り口を変えて分析したりできます。

よく使われるエラー属性の例:

属性説明
error.messageエラーに関連付けられたメッセージ。
error.typeエラーのタイプまたはクラス。
error.stackエラーに関連付けられたスタック トレース。
error.handlingエラーが処理済みかどうかを示します。APM エラーは、親スパンが成功した処理 (HTTP 200, gRPC OK) もしくは成功したエラー処理 (HTTP 400, gRPC NOT_FOUND) を報告した場合に handled と見なされます。RUM エラーは、コード内で手動キャプチャされていない場合に unhandled となります。

Edit アイコンをクリックすると、表示 / 非表示を切り替えられるファセットの一覧を確認できます。

鉛筆アイコンをクリックして、表示中の Error Tracking ファセットを表示 / 非表示に切り替えます。

Issue レベル フィルター

エラー イベントに加えて、Error Tracking には表示中の Issue 一覧をより細かく絞り込むための Issue レベル フィルターが用意されています。

Error Tracking の Issue レベル フィルター

ソース

Error Tracking は、複数の Datadog 製品 (RUM, Logs, APM) のエラーを 1 つのビューに統合し、スタック全体を横断してエラーの監視とトラブル シューティングができるようにします。Explorer では、AllBrowserMobileBackend の Issue を表示対象として選べます。

さらに粒度を上げたい場合は、特定のログ ソースや SDK で絞り込んだり、プログラミング言語単位でスコープを限定したりできます。

修正案あり

AI 生成の修正案が用意されている Issue のみを表示し、問題を素早く解消できるようにします。

チーム フィルター

Issue Team Ownership を使うと、Git CODEOWNERS とサービス オーナー情報に基づいて、チームに関連する Issue をすばやく特定できます。

担当者

Issue を自分、または最も詳しいメンバーに割り当てて追跡できます。担当者で絞り込めるため、Issue の一覧を簡単に整理できます。

推定原因

推定原因 により、エラーの絞り込みと優先順位付けを素早く行えます。想定される根本原因により焦点を当てやすくなり、チームがより効率的に対処できます。

Issue を確認する

任意の Issue をクリックすると Issue パネルが開き、より詳しい情報を確認できます。

Issue の要約が表示される Error Tracking Issue パネル上部

トラブル シューティングに必要な概要情報は、パネル上部にまとまっています。ここから、ライフサイクル (初回 / 最終の発生日時、総発生回数、時間経過に伴う発生回数) を把握できます。

エラー サンプルが表示される Error Tracking Issue パネル下部

Issue パネルに表示される内容は、エラーのソースによって異なります。たとえば APM エラーから作成された Issue では、リソース名やオペレーション名などのエラー スパン タグが表示され、関連 Trace や紐づく Logs へ直接アクセスできます。

パネル下部では、該当 Issue に紐づくエラー サンプルを切り替えて確認できます。各エラー サンプルでは、エラーのスタック トレースや影響を受けたユーザーの特性など、原因調査に役立つ情報を参照できます。

新規 / 影響の大きいエラーのアラートを受け取る

新しい Issue を発生直後に把握できれば、重大化する前に先回りして特定と修正が行えます。Error Tracking monitor では、新規 Issue や、システムまたはユーザーへの影響が大きい Issue を追跡できます (詳細: Error Tracking Monitors)。

Explorer での検索クエリは、そのままエクスポートして、同じスコープで Error Tracking Monitor を作成できます:

参考資料

お役に立つドキュメント、リンクや記事: