【问题标题】:How can I add a Lambda Trigger without erasing other triggers?如何在不删除其他触发器的情况下添加 Lambda 触发器?
【发布时间】:2017-03-04 03:46:06
【问题描述】:

我有一个 S3 存储桶,我正在将异构文件放入其中。特定文件夹中的每个文件(即 key="typeA/content.json")和每个文件夹都会触发不同的 Lambda 函数。

我正在使用这个命令:

aws s3api put-bucket-notification-configuration --bucket mybucket --notification-configuration file://notification.json

我的 notification.json 文件如下所示:

{ "LambdaFunctionConfigurations": [ { "LambdaFunctionArn": "arn:aws:lambda:us-east-1:085318171245:function:myfunction", "Events": ["s3:ObjectCreated:*"], "Id ": "lkjlkj", "Filter": { "Key": { "FilterRules": [ {"Name": "prefix", "Value": "typeA"}, {"Name": "suffix", "Value ": "content.json"} ] } } } ] }

这个命令非常适合我创建的第一个触发器。但是,当我尝试将不同的触发器添加到不同的 LambdaFunctionArn(对于“typeB”前缀)时,第一个触发器被删除。

我知道前缀+后缀必须是唯一的,并且我已经确认这不是问题。

我可以先查找所有现有触发器,附加新触发器,然后发回完整列表,但这似乎效率低下。

我怎样才能再追加一个触发器?

【问题讨论】:

    标签: aws-lambda


    【解决方案1】:

    看起来 S3 对象创建事件可能只有一个 lambda 关联。

    https://forums.aws.amazon.com/message.jspa?messageID=600330

    尝试 S3 扇出,您将 S3 通知发送到 SNS 主题,并且可以有多个 lambda 消费者供 SNS 处理它们。

    https://aws.amazon.com/blogs/compute/fanout-s3-event-notifications-to-multiple-endpoints/

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2014-11-11
      • 1970-01-01
      • 2013-09-29
      • 2012-05-22
      • 1970-01-01
      • 2020-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多