Q23 — AWS DVA-C02 第3章
第 23/100 問 | ← 第3章
ある企業が、Amazon API GatewayのバックエンドとしてAWS Lambda関数をアプリケーション層の後ろに配置しています。高トラフィック状況下での注文処理のために、アプリケーションはフロントエンドからPOST APIを呼び出します。このPOST APIは非同期方式でLambda関数を呼び出します。多数のケースで、アプリケーションが注文を処理できませんでした。Lambdaアプリケーションのログには、エラーまたは失敗の記録が一切ありません。開発者は、この問題を解決するためにどのような措置を講じるべきですか?
- A. API障害を特定するためにフロントエンドのログを確認します。ログファイル内のリクエストを手動で使用してPOST APIを呼び出します。
- B. Lambdaのデッドレターキュー(DLQ)を作成・確認します。失敗した関数を調査し、イベントを再処理します。 ✓
- C. Amazon CloudWatch内のLambdaログを確認し、潜在的なエラーを検索します。エラーを修正します。
- D. API Gateway内でPOST APIのキャッシュを無効化します。
正解: B. Lambdaのデッドレターキュー(DLQ)を作成・確認します。失敗した関数を調査し、イベントを再処理します。
解説
非同期呼び出しでは、Lambda関数のエラーは通常デッドレターキュー(DLQ)に送信されます。デッドレターキューを作成・確認することで、以前に失敗したイベントを確認し、問題を特定・再処理することが可能です。Lambdaアプリケーションログにエラーまたは失敗が表示されていないのは、非同期呼び出しの特性により、関連エラーがDLQに送信されているためです。したがって、DLQの確認が最も適切な対応です。他の選択肢(A、C、D)は、この特定の状況では関連性が低いです。