AWS X Ray
分散 request のトレース
複数のサービス(API Gateway、Lambda、ECS、DynamoDB…)を通過する request の trace を収集し、service map を描いて遅い箇所やエラー箇所を示します。現在は OpenTelemetry(ADOT)で計装し、CloudWatch で確認するのが一般的です。
- コスト$ 安い
- 難易度●●●●●
- 未使用でも課金?いいえ
- サーバーレス
- 出題試験DVA · SOA · SAA
たとえるなら荷物に GPS を付けて、どの倉庫で最も長く止まっているかを把握するようなものです。
いつ使う?
✓ 使うべき場面
多層構成の microservices/serverless アプリケーションでレイテンシーやエラーをデバッグしたいとき。
✗ 避けるべき場面
単純なメトリクスとログだけで十分 → CloudWatch。サービスごとの SLO の視点が欲しい → CloudWatch Application Signals。
よくある使い方
- 連鎖的に呼び出される Lambda の中で遅延の原因となるサービスの特定
- service map 上での各ダウンストリームのエラー率の確認
- 異常な request を分析するための trace のサンプリング
料金はいくら?
- 課金方式: 記録された trace 数、取得された trace 数、分析時にスキャンされた trace 数に応じて課金されます。
⚠️ 料金の落とし穴
トラフィックの多いシステムで sampling rate を 100% にすると、trace 数(とコスト)が大幅に増えます。
関連サービス
SAA-C03 対策
X-Ray は次の対策モジュールで扱っています: