如何解决使用 Systems Manager Automation 通过 Amazon S3 事件通知调用 Lambda 函数的问题?

1 分钟阅读
0

我的 Amazon Simple Storage Service(Amazon S3)事件通知没有调用我的 AWS Lambda 函数。或者说,在我尝试创建 Amazon S3 事件通知来调用我的 Lambda 函数时,我会收到错误消息。我能否使用 AWS Systems Manager Automation 来解决 Lambda 的 Amazon S3 事件通知问题?

简短描述

要解决向 Lambda 发送 Amazon S3 事件通知时出现的问题,请使用 AWSSupport-TroubleshootLambdaS3Event Systems Manager Automation 运行手册。

此运行手册会验证您输入的 Lambda 函数和 Amazon S3 桶参数值是否有事件配置。如果有事件配置,此运行手册将验证配置、资源策略和权限是否正确。此运行手册的输出将提供 AWS 命令行界面(AWS CLI)命令,让您可以添加所需的资源策略或权限。

**注意:**如果不再需要 Amazon S3 事件通知,最佳做法是将其删除。

解决方法

1.    打开 AWS Systems Manager 控制台

2.    在导航窗格的变更管理下,选择自动化

3.    选择执行自动化

4.    在由 Amazon 所有选项卡的自动化文档搜索框中,输入并搜索 AWSSupport-TroubleshootLambdaS3Event

5.    选中 AWSSupport-TroubleshootLambdaS3Event 卡右上角的复选框。然后,选择下一步

6.    在输入参数部分,执行以下操作:
对于 AutomationAssumeRole,输入运行手册的 AWS Identity and Access Management(IAM)角色,该角色假设包括 lambda:GetPolicys3:GetBucketNotification 权限。
对于 LambdaFunctionArn,输入 Lambda 函数的 Amazon 资源名称(ARN)
对于 S3BucketName,输入 Amazon S3 桶的名称。

7.    选择执行

**注意:**如果输出建议验证和配置您的 Lambda 函数并发,请参阅异步调用AWS Lambda 函数扩展

相关信息

为什么我的 Amazon S3 事件通知没有调用我的 Lambda 函数?

在创建 Amazon S3 事件通知来调用我的 Lambda 函数时,为什么会出现“无法验证以下目标配置”错误?

AWS 官方
AWS 官方已更新 2 年前