代码之家  ›  专栏  ›  技术社区  ›  fgonzalez

文件上载到s3时未触发s3 createObject事件

  •  0
  • fgonzalez  · 技术社区  · 7 年前

    Hoever,为了测试它,我从amazon控制台手动上传了该文件,我希望该函数能够被执行,但是检查CloudWatch日志,似乎什么都没有执行。

    如果我手动运行lambda函数,一切正常,并且我在Cloudwatch中看到了日志,但是触发失败的是事件。

    register:
        handler: lib/register.handler
        memory: 256
        events:
          - s3:
            bucket: ${self:custom.myBucketArn}
            event: s3:ObjectCreated:*
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   thomasmichaelwallace    7 年前

    我有点惊讶于这种部署方式,因为(除非最近已经解决)CloudFormation有一个限制,即它只能对自己的资源进行操作,这意味着Serverless无法将触发器附加到不是由该模板创建的bucket上。

    幸运的是,经常遇到这种限制,人们已经编写了无服务器框架插件来解决它。我建议您使用此插件在现有存储桶上触发lambda:

    https://github.com/matt-filion/serverless-external-s3-event