Systems Manager Automation を使用して Simple Storage Service (Amazon S3) イベント通知で Lambda 関数を呼び出す際の問題をトラブルシューティングするにはどうすればよいですか?

最終更新日: 2022 年 02 月 14 日

Amazon Simple Storage Service (Amazon S3) イベント通知で、AWS Lambda 関数が呼び出されません。または、Simple Storage Service (Amazon S3) イベント通知を作成して Lambda 関数を呼び出そうとすると、エラーが表示されます。AWS Systems Manager Automation を使用して、Lambda に関する Simple Storage Service (Amazon S3) イベント通知の問題をトラブルシューティングできますか?

簡単な説明

Simple Storage Service (Amazon S3) イベント通知を Lambda に送信する際の問題をトラブルシューティングするには、AWSSupport-TroubleshootLambdaS3Event Systems Manager Automation ランブックを使用してください。

ランブックは、入力した Lambda 関数と Simple Storage Service (Amazon S3) バケットパラメータ値に対するイベント設定が存在するかどうかを確認します。イベント設定が存在する場合、ランブックは設定、リソースポリシー、およびアクセス許可が正しいことを確認します。ランブックの出力には、必要なリソースポリシーまたはアクセス許可を追加できる AWS Command Line Interface (AWS CLI) コマンドが用意されています。

注: Simple Storage Service (Amazon S3) イベント通知が不要になった場合は、イベント通知を削除するのがベストプラクティスです。

解決方法

1.    AWS Systems Manager コンソールを開きます。

2.    ナビゲーションペインの [変更管理] で、[オートメーション] を選択します。

3.    [オートメーションの実行] を選択します。

4.    [Amazon が所有する] タブの [オートメーションドキュメント] 検索ボックスに、「AWSSupport-TroubleshootLambdaS3Event」と入力して検索します。

5.    AWSSupport-TroubleshootLambdaS3Event カードの右上にあるチェックボックスを選択します。その後、[次へ] を選択します。

6.    [入力パラメータ] セクションで、次の操作を行います。
[AutomationAssumeRole] には、lambda: GetPolicy および s3:GetBucketNotification アクセス許可を含む、ランブックの AWS Identity and Access Management (IAM) ロールを入力します。
[LambdaFunctionArn] には、Lambda 関数の Amazon リソースネーム (ARN) を入力します。
[S3BucketName] には、Simple Storage Service (Amazon S3) バケットの名前を入力します。

7.    [実行] を選択します。

注: 出力から Lambda 関数の同時実行性の検証と設定が示唆される場合は、「非同期呼び出し」と「AWS Lambda 関数のスケーリング」を参照してください。