AWS X-Rayとは
分散アプリケーション(マイクロサービス・サーバーレス)のリクエストをトレースして可視化するサービス。サービスマップで各コンポーネント間のレイテンシ・エラー率・スループットをグラフィカルに表示する。
X-Ray SDKをアプリケーションに組み込むか、X-Ray Daemonを通じてトレースデータを収集する。Lambdaではアクティブトレーシングを有効にするだけで計測できる。
試験での問われ方
DVAでは「マイクロサービスのボトルネックを特定したい」「どのサービスでレイテンシが発生しているか可視化したい」シナリオでX-Rayを選ぶ。CloudWatchはメトリクス監視、X-Rayは分散トレーシングという役割分担を明確にする。
用語の使い分けが頻出。セグメントは1サービスが処理したリクエスト全体の記録、サブセグメントはその中の個別の下流呼び出し(DB問い合わせや外部API)を細かく刻んだもの。アノテーションはキー・バリューでインデックスされフィルター式での検索に使えるのに対し、メタデータはインデックスされず検索対象にならない補足情報という違いを押さえる。
全リクエストを記録するとコストとオーバーヘッドが増えるため、サンプリングルール(例: 毎秒最初の1件+残りの何%、のように固定レート+割合で指定)で収集対象を絞る。デフォルトのサンプリングと独自ルールの優先順位もDVAで問われる。
このサービスが登場する演習問題(8問)
- 【CLF-C02】ある企業が、AWS上のWebアプリケーションのパフォーマンス問題を調査しています。アプリケーションのボトルネックを特定す…
- 【DVA-C02】あるチームがAWS X-Rayを使ってマイクロサービスのパフォーマンスを可視化しようとしている。Lambda関数からRD…
- 【DVA-C02】あるチームがX-Rayでトレースを設定したが、本番環境で1秒間に10,000リクエストが来ており、すべてをトレースすると…
- 【DVA-C02】あるチームがX-RayのサービスマップでAPI Gatewayから始まりLambdaを経由してDynamoDBに到達する…
- 【DVA-C02】あるチームがX-Rayを使ってマルチサービスアーキテクチャをトレースしている。あるリクエストのX-Rayトレースを確認す…
- 【DVA-C02】あるチームが本番環境でX-Rayを使ったトレーシングを最適化したい。現在の設定では1秒間に1リクエスト+残り5%をサンプ…
- 【SAP-C02】ある企業が Amazon EKS で Kubernetes クラスターを運用しており、数百のマイクロサービスをデプロイし…
- 【SAP-C02】ある企業が AWS 上で Amazon EKS クラスターを運用しています。クラスターには数百のマイクロサービスがデプロ…