【问题标题】:Create AWS lambda event source to trigger file create by aws cli cp command通过 aws cli cp 命令创建 AWS lambda 事件源以触发文件创建
【发布时间】:2016-06-26 06:24:27
【问题描述】:

我想创建一个 AWS lambda 事件源来捕获通过 aws cli cp 命令上传文件的操作,但是当我上传文件时无法触发它。这是我所做的:

我将事件源配置如下

我已经尝试了 Object Created 事件类型的所有四个选项,但它不起作用。

我使用aws cli如下

aws s3 cp sample.html s3://ml.hengwei.me/data/

有没有我错过的配置?

【问题讨论】:

  • 您指定了前缀还是后缀?
  • lobo@,是的,我做到了。它与 jarmod@ 的建议一起使用。谢谢。

标签: amazon-s3 aws-lambda


【解决方案1】:

您正在从错误的事件类型触发您的 Lambda。

使用 awscli 将文件复制到 S3 不会导致 s3:ObjectCreated:Copy 事件(我认为这与 S3 复制操作有关,将对象从一个存储桶复制到另一个存储桶)。在您的情况下,该对象正在上传到 S3,我认为它会导致 s3:ObjectCreated:Put 或 s3:ObjectCreated:CompleteMultipartUpload。

活动包括:

  • s3:ObjectCreated:Put – 对象由 HTTP PUT 创建 操作。
  • s3:ObjectCreated:Post – 对象由 HTTP POST 创建 操作。
  • s3:ObjectCreated:Copy – 对象已创建为 S3 副本 操作。
  • s3:ObjectCreated:CompleteMultipartUpload – 一个对象是 通过完成 S3 分段上传创建。
  • s3:ObjectCreated:* – 对象由其中一种事件类型创建 上面列出的或通过添加的类似对象创建事件 未来。

完整的事件列表是here。请注意,awscli 可能会也可能不会使用分段上传,因此您需要处理这两种情况。

【讨论】:

  • jarmod@,我使用了 Object Created(All) 选项,它起作用了!非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-16
  • 2019-07-26
  • 2021-05-28
相关资源
最近更新 更多