Q67 — AWS DVA-C02 第3章
第 67/100 問 | ← 第3章
開発者は、Amazon S3 にオブジェクトがアップロードされたときに呼び出される AWS Lambda 関数を実装しています。開発者は、この関数を本番の AWS アカウントにデプロイする前に、ローカル開発マシン上で Lambda 関数をテストしたいと考えています。この要件を満たすために、最も少ない運用負荷で実現できる解決策はどれですか?
- A. aws s3api put-object CLI コマンドを使用してオブジェクトを Amazon S3 にアップロードします。S3 イベントからのローカル Lambda 呼び出しを待ちます。
- B. PutObject S3 イベント用のサンプル JSON テキストファイルを作成します。ローカルで Lambda 関数を呼び出します。aws lambda invoke CLI コマンドを使用し、JSON ファイルと Lambda 関数名をパラメータとして指定します。
- C. sam local start-lambda CLI コマンドを使用して Lambda を起動します。sam local generate-event s3 put CLI コマンドを使用して Lambda テスト用の JSON ファイルを作成します。sam local invoke CLI コマンドを使用し、JSON ファイルをパラメータとして Lambda 関数を呼び出します。 ✓
- D. PutObject S3 イベント用の JSON 文字列を作成します。AWS マネジメントコンソールで、この JSON 文字列を使用してローカル Lambda 関数のテストイベントを作成します。テストを実行します。
正解: C. sam local start-lambda CLI コマンドを使用して Lambda を起動します。sam local generate-event s3 put CLI コマンドを使用して Lambda テスト用の JSON ファイルを作成します。sam local invoke CLI コマンドを使用し、JSON ファイルをパラメータとして Lambda 関数を呼び出します。
解説
選択肢 C では、SAM CLI ツールを使用してローカルで Lambda 実行環境を起動し、sam local generate-event s3 put CLI コマンドで S3 イベントのテスト用 JSON ファイルを生成できます。その後、sam local invoke CLI コマンドで Lambda 関数を呼び出すことで、AWS クラウド環境へのデプロイなしにローカルで Lambda 関数の動作をテストできます。したがって、選択肢 C は、最小限の運用負荷で要件を満たす解決策です。