繁体   English   中英

使用 python 在 s3:Objectcreated.* 上启用/禁用或删除 aws lambda 触发器

[英]Enable/Disable or delete aws lambda trigger on s3:Objectcreated.* using python

我有一个 lambda function,当 Bucket A-prod 中的任何新对象创建(s3:Objectcreated.*)时触发,这个 lambda 处理文件将结果保存在 B-prod 中。

现在我想在 QA 上恢复这些数据,我正在为此编写一个脚本,我不想再次处理文件。 对于我的情况,我将通过 python 脚本将 B-prod 复制到 B-qa,将 A-prod 复制到 A-qa。

  1. 如果我可以暂时禁用 lambda 触发器,那就太好了,但是这是不可能的,因为 aws 不允许再禁用(在 aws 控制台上它是灰色的)。
  2. 我可以从 aws 控制台删除触发器,但无法从 python 或 cli 找到如何执行此操作。 AWS 控制台截图 Lambda Function 触发器

无法从 python 或 cli 找到如何执行此操作。

在 boto3 中,您使用put_bucket_notification_configuration来提供空通知。

对于希望在不删除触发器的情况下从 AWS 控制台临时禁用的任何人,这里有一个解决方法。 请注意,这并不意味着永久解决方案。 我不得不暂时禁用并且它有效。

Go 到 S3 > 桶 > 你的桶 > 属性

向下滚动到“事件通知”

您应该在目标中看到您的 Lambda Function,选择编辑,取消选中“所有 Object 创建事件”,选中另一个不会在您的过程中发生的事件类型,例如“对象标记”,保存。

完成后,通过选中“对象创建事件”并取消选中其他事件来启用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM