Instiq
第5章 · トラブルシューティングと最適化·v2.1.0·更新 2026/6/28·読了目安 約8分

変更要約: in-scopeサービス網羅(軸B): s1(CloudWatch)にAthena/OpenSearch Serviceによる大規模ログ分析の定義・役割・選択基準を追記。

5.2X-Ray による分散トレースとデバッグ

この節の要点

AWS X-Ray による分散トレース(リクエストの経路と各区間の遅延)、ボトルネックやエラーの特定、サービスマップといったデバッグ手法を理解します。

複数サービスにまたがる処理では「どこで遅い/失敗しているか」の把握が難しくなります。AWS X-Ray はリクエストを追跡し、各区間の遅延やエラーを可視化します。

5.2.1トレースとサービスマップ

API Gateway(5ms)→Lambda(40ms)→DynamoDB(8ms)→外部 API(210ms・遅い)というリクエストの各区間の遅延を X-Ray が示し、サービス横断でボトルネックを特定できることを表した図。
X-Ray のトレースでボトルネックを特定
  • トレース:1リクエストが通る各サービスの区間(セグメント)と遅延を記録する。
  • サービスマップ:サービス間の依存と健全性を図で可視化する。
  • 遅い区間やエラー率の高い区間を特定し、ボトルネックの切り分けに使う。

X-Ray の構造を押さえます。1リクエスト全体が トレース、各サービスでの処理区間が セグメント、その内部の細かい処理(DB 呼び出しなど)が サブセグメント です。全リクエストを記録すると重いので サンプリング で一部だけ取得し、コストと網羅性のバランスを取ります。注釈(Annotation) はインデックス付きでフィルタ検索でき、メタデータ(Metadata) は検索対象外の付加情報です。Lambda や API Gateway は設定で アクティブトレースを有効化でき、EC2/ECS では X-Ray デーモン(またはサイドカー)がトレースを送信します。アプリには SDK を組み込み、外部呼び出しを計測します。サービス間でトレースをつなぐには トレースヘッダー(X-Amzn-Trace-Id) が伝播される必要があります。可視化された サービスマップ で、エラー率やレイテンシが高いノードを一目で特定できます。

続きは無料登録で読めます

冒頭を無料で公開中。無料登録でこの節の全文と、第4章以降を含む全参考書・全問題集が読めます。