簡體   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