無限ノック › DVA 練習問題一覧 › 問題
DVAトラブルシューティングと最適化

開発者が Amazon S3 バケットにオブジェクトがアップロードされるたびに Lambda 関数をトリガーする Amazon EventBridge ルールを作成しました。EventBridge ルールは「有効」状態ですが、S3 にファイルをアップロードしても Lambda 関数が一切実行されません。Lambda 関数は手動では正常に呼び出せます。CloudWatch メトリクスを確認すると、EventBridge ルールの `MatchedEvents` メトリクスが継続的に 0 を示しています。最も可能性の高い原因はどれですか?

A
S3 バケットで Amazon EventBridge への通知送信が有効化されていないため、S3 イベントが EventBridge に送信されていない。
✓ 正解
S3 バケットの EventBridge 連携はデフォルト無効であり、バケットのプロパティ画面から明示的に有効化しないと S3 イベントは EventBridge に一切届かない。MatchedEvents が継続的に 0 になる直接の根本原因。
B
Lambda 関数のリソースベースポリシーに、EventBridge からの呼び出しを許可するステートメントが設定されていない。
リソースベースポリシーの欠如は EventBridge がイベントをマッチした後の呼び出し段階の問題。その場合 MatchedEvents は増加するが Lambda は呼び出されないという症状になり、MatchedEvents=0 とは一致しない。
C
EventBridge ルールのターゲットに指定した Lambda 関数の ARN が誤っているため、イベントはルールにマッチしているが Lambda の呼び出しに失敗している。
ターゲット ARN の誤りはマッチング成功後の呼び出し失敗を引き起こすため、MatchedEvents は 0 にはならず増加する。MatchedEvents が継続的に 0 という診断結果と矛盾しており、今回の原因として考えられない。
D
Lambda 関数の予約済み同時実行数(Reserved Concurrency)が 0 に設定されているため、Lambda が呼び出せない。
Reserved Concurrency=0 は Lambda 呼び出し側の問題であり EventBridge のルールマッチングには影響しない。この場合 MatchedEvents>0 かつ Lambda 呼び出しエラーという症状になり、MatchedEvents=0 とは一致しない。

解説

S3 はデフォルトでは EventBridge にイベントを送信しません。S3 バケットの「プロパティ」→「Amazon EventBridge」から通知を明示的に有効化する必要があります。`MatchedEvents=0` は EventBridge がイベント自体を受信できていないことを示します。選択肢Bのリソースベースポリシー欠如はマッチング後の呼び出し失敗の問題であり、その場合は `MatchedEvents>0` かつ Lambda が呼び出されないという症状になります。選択肢Cのターゲット ARN 誤りも同様にマッチングは成功するため `MatchedEvents>0` となり今回の症状と矛盾します。選択肢Dの Reserved Concurrency=0 もマッチングには影響せず `MatchedEvents>0` の状態で Lambda が呼び出せない症状となります。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDVAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← DVA の問題一覧に戻る