amazon-web-services - 用于移动到冰川的对象的 AWS Lambda

标签 amazon-web-services amazon-s3 java-8 aws-lambda amazon-sqs

我正在开发一个 POC,我在 S3 上设置了一个生命周期规则,以便在一定天数后将对象移动到冰川(如果对象具有指定的标签)。规则对我来说工作正常,对象通过生命周期规则移动到冰川,存储类型从标准更改为冰川。 (到目前为止一切顺利)。

因为我需要限制用户从我的应用程序使用该文件(存档文件),所以我正在寻找一种方法来获取通知(通过 SQS)或调用 Lambda 函数(调用我的应用程序 REST 端点)当对象是实际上搬到了冰川。

我已经在此处检查了 S3 支持的事件通知类型(http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html#supported-notification-event-types),但它没有任何存储更改或对象被移动到冰川。

如果有任何方法可以配置此功能或我可以使用任何其他方法来实现此行为,请告诉我。

问候。

最佳答案

对于通过生命周期规则从 S3 移动到 Glacier 的对象,您不会收到 Lambda 通知。

当 S3 对象移动到 Glacier 时,该对象不会从 S3 中删除。相反,它的存储类型只是从 Standard/RR/IA 更改为“Glacier”。并且没有存储类型更改的通知类型。

此外,AWS 文档指出:

You will not receive event notifications from automatic deletes from lifecycle policies or from failed operations.

来源:http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html#notification-how-to-event-types-and-destinations

关于amazon-web-services - 用于移动到冰川的对象的 AWS Lambda,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46571670/

相关文章:

python - 在 AWS Beanstalk 上部署 Flask App 出错?内部服务器错误

amazon-web-services - 如何将 cognito 用户的密码设置为管理员?

amazon-web-services - 指标服务器:v0.4.2 无法在 AWS kubernetes 集群环境中抓取指标(无法验证证书,不包含任何 IP SAN)

ruby-on-rails - Rails3 - 如何在应用程序中获取 aws-s3 的 yml 配置数据?

java - 在封闭范围内定义的局部变量 log 必须是最终的或有效最终的

java - 在带有 lambda 参数的 lambda 中使用谓词

mysql - 如何在 php 和 mysql 中修复 mysql 大写查询

amazon-web-services - StarCluster 的替代品?

amazon-web-services - 我是否必须在每个api请求中将Session和S3定义为包变量或创建实例

java - 如何提交 Oracle Java 变更请求?