DVA-C02トラブルシューティングと最適化EASY単一選択

あるチームがAWS X-Rayを使ってマイクロサービスのパフォーマンスを可視化しようとしている。Lambda関数からRDSへのクエリ実行時間を個別に計測してX-Rayのトレースに記録したい。最も適切な方法はどれか。

  1. A. CloudWatchのカスタムメトリクスにクエリ実行時間をPutMetricDataで記録する
  2. B. Lambda関数のコード内でX-Ray SDKのサブセグメントを作成し、RDSクエリをその中で実行する
  3. C. Lambda関数の環境変数にX-Ray ARNを設定することでRDSアクセスが自動的にトレースされる
  4. D. X-Rayデーモンに設定ファイルでRDSのエンドポイントを登録する
解答と解説を見る

正解: B

X-Rayでダウンストリームのデータベースクエリなど特定処理の実行時間を個別に記録するには、SDKのサブセグメントを作成してその中で処理を囲む(選択肢B)が正しい方法である。サブセグメントはセグメント内に入れ子で作成でき、名前・メタデータ・アノテーションを付与してサービスマップに詳細が表示される。選択肢Dはデーモン設定でRDSを自動トレースする方法は存在しない。選択肢AのCloudWatchカスタムメトリクスはX-Rayのトレース記録ではなく、異なる監視手段である。選択肢CのARNを環境変数に設定しても自動トレースは有効化されない。X-Rayの自動インスツルメンテーションはHTTPクライアントやAWS SDKコールに限られ、RDSへの直接クエリはサブセグメントによる手動インスツルメンテーションが必要。

▸ この試験を本気で演習する(全150問・無料)