トレースとトレースの詳細の表示 - AWS X-Ray

トレースとトレースの詳細の表示

X-Ray コンソールの [トレース] ページを使用して、URL、レスポンスコード、トレース概要のその他のデータでトレースを検索します。トレースリストからトレースを選択すると、[トレースの詳細] ページには、選択したトレースに関係するサービスノードのマップと、トレースセグメントのタイムラインが表示されます。

トレースの表示

CloudWatch console
CloudWatch コンソールでトレースを表示するには
  1. AWS Management Console にサインインして、CloudWatch コンソール (https://console.aws.amazon.com/cloudwatch/) を開きます。

  2. 左側のナビゲーションペインで、[X-Ray トレース] を選択してから [トレース] を選択します。グループでフィルタリングすることも、フィルター式を入力することもできます。これにより、ページ下部の [トレース] セクションに表示されるトレースがフィルタリングされます。

    または、サービスマップを使用して特定のサービスノードに移動してから、トレースを表示できます。これにより、クエリを既に適用済みの [トレース] ページが開きます。

  3. [クエリリファイナー] セクションでクエリを絞り込みます。共通属性でトレースをフィルタリングするには、[クエリを絞り込む] の横にある下矢印からオプションを選択します。オプションは以下のとおりです。

    • ノード - サービスノードでトレースをフィルタリングします。

    • リソース ARN - トレースに関連付けられたリソースでトレースをフィルタリングします。これらのリソースの例には、Amazon Elastic Compute Cloud (Amazon EC2) インスタンス、AWS Lambda 関数、または Amazon DynamoDB テーブルが含まれます。

    • ユーザー - ユーザー ID でトレースをフィルタリングします。

    • エラー根本原因メッセージ - エラー根本原因でトレースをフィルタリングします。

    • URL - アプリケーションで使用される URL パスでトレースをフィルタリングします。

    • HTTP ステータスコード - アプリケーションが返した HTTP ステータスコードでトレースをフィルタリングします。カスタムレスポンスコードを指定、または以下から選択できます。

      • 200 - リクエストが成功しました。

      • 401 - リクエストには有効な認証情報がありませんでした。

      • 403 - リクエストには有効なアクセス許可がありませんでした。

      • 404 - サーバーがリクエストされたリソースを見つけることができませんでした。

      • 500 - サーバーにより予期しない状態が検出され、内部エラーを生成しました。

    1 つまたは複数のエントリを選択してから [クエリに追加] を選択すると、ページ上部のフィルター式に追加されます。

  4. 単一トレースを検索するには、トレース ID をクエリフィールドに直接入力します。X-Ray 形式または World Wide Web Consortium (W3C) 形式を使用できます。例えば、AWS Distro for OpenTelemetry を使用して作成されたトレースは W3C 形式です。

    注記

    W3C 形式のトレース ID で作成されたトレースをクエリするときは、一致するトレースが X-Ray 形式でコンソールに表示されます。例えば、W3C 形式で 4efaaf4d1e8720b39541901950019ee5 にクエリを実行すると、コンソールには X-Ray に相当する 1-4efaaf4d-1e8720b39541901950019ee5 が表示されます。

  5. [クエリを実行] を選択すると、いつでもページ下部の [トレース] セクションに一致するトレースのリストが表示されます。

  6. 単一トレースの [トレースの詳細] ページを表示するには、リストからトレース ID を選択します。

    次の図は、トレースに関連付けられたサービスノードと、トレースを構成するセグメントが取得したパスを表すノード間のエッジを含む、[トレースマップ] を示しています。[トレース概要][トレースマップ] に続きます。概要には、サンプルの GET オペレーション、[レスポンスコード]、トレースの実行に要した [所要時間]、リクエストの [経過時間] に関する情報が含まれます。[セグメントのタイムライン] がトレースのセグメントとサブセグメントの所要時間を示す [トレース概要] に続きます。

    トレースマップ、概要、セグメントのタイムラインは、トレース内のサービスノードとセグメントに関する情報を列挙します。

    Amazon SQS と Lambda を使用するイベント駆動型アプリケーションがある場合は、[トレースマップ] で各リクエストのトレースが接続された表示を確認できます。マップでは、メッセージプロデューサーからのトレースは AWS Lambda コンシューマーからのトレースにリンクされ、破線のエッジとして表示されます。イベント駆動型アプリケーションの詳細については、「イベント駆動型アプリケーションのトレース」を参照してください。

    [トレース][トレースの詳細] ページはクロスアカウントトレースにも対応しており、これにより複数のアカウントのトレースをトレースリストと 1 つのトレースマップ内に表示できます。

X-Ray console
X-Ray コンソールでトレースを表示するには
  1. X-Ray コンソールのトレースページを開きます。[トレース概要] パネルには、[エラーの根本原因][ResourceARN][InstanceId] などの、共通機能でグループ化されたトレースのリストが表示されます。

  2. トレースのグループ化されたセットを表示する共通機能を選択するには、[グループ別] の横にある下矢印を展開します。次の図は、AWS X-Ray サンプルアプリケーション の URL でグループ化されたトレースのトレース概要と、関連するトレースのリストを示しています。

    URL でグループ化されたトレースの次は、[ID]、[方法]、[応答] などの詳細を含むトレースリストです。
  3. トレースの [ID] を選択すると [トレースのリスト] の下に表示されます。ナビゲーションペインで [サービスマップ] を選択して特定のサービスノードのトレースを表示することもできます。そうすると、そのノードに関連付けられているトレースを表示できます。

    [タイムライン] タブにはトレースのリクエストフローが表示されますが、以下のものが含まれます。

    • 各トレース内のセグメントのパスのマップ。

    • セグメントがトレースマップのノードに到達するまでにかかった時間。

    • トレースマップのノードに対して実行されたリクエスト数。

    次の図は、サンプルアプリケーションに対して実行された GET リクエストに関連付けられた、[トレースマップ] の例を示しています。矢印は各セグメントがリクエスト完了のために用いたパスを示しています。サービスノードには GET リクエスト中に実行されたリクエスト数が表示されます。

    トレースマップの後に、セグメント、その期間、オリジン、それぞれの終了を示すタイムラインが続きます。

    [タイムライン] タブの詳細については、次の「トレースのタイムラインの探索」セクションを参照してください。

    [未加工データ] タブには、トレース、およびトレースを構成するセグメントとサブセグメントに関する情報が JSON 形式で表示されます。この情報には、次の内容が含まれます。

    • タイムスタンプ

    • 一意の ID

    • セグメントまたはサブセグメントに関連付けられたリソース

    • セグメントまたはサブセグメントのソース、またはオリジン

    • HTTP リクエストのレスポンスなど、アプリケーションへのリクエストに関する追加情報

トレースのタイムラインの探索

[タイムライン] セクションには、タスクの完了にかかった時間に対応する水平バーの横にある、セグメントとサブセグメントの階層が表示されます。リスト内の最初のエントリは、1 回のリクエストに対してサービスによって記録されたすべてのデータを表すセグメントです。サブセグメントはインデントされてセグメントの後に一覧表示されます。列には各セグメントに関する情報が含まれます。

CloudWatch console

CloudWatch コンソールでは、[セグメントのタイムライン] に次の情報が表示されます。

  • 最初の列: 選択したトレース内のセグメントとサブセグメントが表示されます。

  • [セグメントステータス] 列: 各セグメントとサブセグメントのステータスの結果が表示されます。

  • [レスポンスコード] 列: セグメントまたはサブセグメントが実行したブラウザリクエストがある場合、その TTTP レスポンスステータスコードが表示されます。

  • [期間] 列: セグメントまたはサブセグメントの実行期間が表示されます。

  • [次でホストされています:] 列: 必要に応じて、セグメントまたはサブセグメントが実行される名前空間または環境が表示されます。詳細については、「収集されるディメンションと、ディメンションの組み合わせ」を参照してください。

  • 最後の列: タイムライン内の他のセグメントまたはサブセグメントと関連する、セグメントまたはサブセグメントの実行期間に対応する水平バーが表示されます。

サービスノード別にセグメントとサブセグメントのリストをグループ化するには、[ノード別にグループ化] をオンにします。

X-Ray console

トレースの詳細ページで [タイムライン] タブを選択すると、トレースを構成する各セグメントとサブセグメントのタイムラインが表示されます。

X-Ray コンソールの [タイムライン] には次の情報が表示されます。

  • [名前] 列: トレース内のセグメントとサブセグメントの名前が表示されます。

  • [Res.] 列: セグメントまたはサブセグメントによって実行されたブラウザリクエストがある場合、その HTTP レスポンスステータスコードが表示されます。

  • [期間] 列: セグメントまたはサブセグメントの実行期間が表示されます。

  • [ステータス] 列: セグメントまたはサブセグメントのステータスの結果が表示されます。

  • 最後の列: タイムライン内の他のセグメントまたはサブセグメントと関連する、セグメントまたはサブセグメントの実行期間に対応する水平バーが表示されます。

コンソールがタイムラインの生成のために使用する未加工トレースデータを表示するには、[未加工データ] タブを選択します。未加工データには、トレース、およびトレースを構成するセグメントとサブセグメントに関する情報が JSON 形式で表示されます。この情報には、次の内容が含まれます。

  • タイムスタンプ

  • 一意の ID

  • セグメントまたはサブセグメントに関連付けられたリソース

  • セグメントまたはサブセグメントのソース、またはオリジン

  • HTTP リクエストのレスポンスなど、アプリケーションへのリクエストに関する追加情報

計測された AWS SDK、HTTP、または SQL クライアントを使用して外部リソースを呼び出すと、X-Ray SDK はサブセグメントを自動的に記録します。また、X-Ray SDK を使用して任意の関数またはコードブロックのカスタムサブセグメントを記録することもできます。カスタムサブセグメントが開いている間に記録された追加サブセグメントは、カスタムサブセグメントの子になります。

セグメントの詳細を表示する

トレースの [タイムライン] から、詳細を表示するセグメントの名前を選択します。

[セグメントの詳細] パネルには、[概要][リソース][注釈][メタデータ][例外]、および [SQL] タブが表示されます。以下が適用されます。

  • [概要] タブには、リクエストと応答に関する情報が表示されます。情報には、名前、開始時間、終了時間、期間、リクエスト URL、リクエストオペレーション、リクエストレスポンスコード、エラーや障害が含まれます。

  • セグメントの [リソース] タブには、X-Ray SDK からの情報、およびアプリケーションを実行している AWS リソースに関する情報が表示されます。Amazon EC2、AWS Elastic Beanstalk、または X-Ray SDK 用の Amazon ECS プラグインを使用して、サービス固有のリソース情報を記録します。プラグインの詳細については、X-Ray SDK for Java の設定 の「サービスプラグイン」セクションを参照してください。

  • その他のタブには、セグメントに記録されている [注釈][メタデータ][例外] が表示されます。計測されたリクエストから生成されると例外は自動的にキャプチャされます。注釈とメタデータには X-Ray SDK が提供するオペレーションを使用して記録される追加情報が含まれています。セグメントに注釈またはメタデータを追加するには、X-Ray SDK を使用します。詳細については、AWS X-Ray のためのアプリケーションの計測 の「AWS X-Ray SDK でアプリケーションを計測する」に記載されている、言語固有のリンクを参照してください。

サブセグメントの詳細を表示する

トレースタイムラインから、詳細を表示するサブセグメントの名前を選択します。

  • [概要] タブにはリクエストとレスポンスに関する情報が表示されます。これには、名前、開始時間、終了時間、期間、リクエスト URL、リクエストオペレーション、リクエストレスポンスコード、エラーや障害が含まれます。計測されたクライアントを使用して生成されたサブセグメントについては、[概要] タブにアプリケーションの視点からのリクエストと応答に関する情報が含まれています。

  • サブセグメントの [リソース] タブには、サブセグメントの実行に使用された AWS リソースの詳細が表示されます。例えば、リソースタブには、AWS Lambda 関数 ARN、DynamoDB テーブルに関する情報、呼び出されるオペレーション、リクエスト ID が含まれる場合があります。

  • その他のタブには、サブセグメントに記録されている [注釈][メタデータ][例外] が表示されます。計測されたリクエストから生成されると例外は自動的にキャプチャされます。注釈とメタデータには X-Ray SDK が提供するオペレーションを使用して記録される追加情報が含まれています。セグメントに注釈またはメタデータを追加するには、X-Ray SDK を使用します。詳細については、AWS X-Ray のためのアプリケーションの計測 の「AWS X-Ray SDK でアプリケーションを計測する」に記載されている、言語固有のリンクを参照してください。

カスタムサブセグメントの場合、[概要] タブには記録するコードまたは関数の領域を指定するために設定できるサブセグメントの名前が表示されます。詳細については、X-Ray SDK for Java を使用したカスタムサブセグメントの生成 の「AWS X-Ray SDK でアプリケーションを計測する」に記載されている、言語固有のリンクを参照してください。

次の図は、カスタムサブセグメントの [概要] タブを示しています。概要には、サブセグメント ID、親 ID、名前、開始時間と終了時間、期間、ステータス、エラーまたは障害が含まれます。

ID、親 ID、名前、時間、エラー、障害などを含む、サブセグメントの概要情報。

カスタムサブセグメントの [メタデータ] タブには、そのサブセグメントで使用されるリソースに関する情報が JSON 形式で含まれています。