【问题标题】:AWS Lambda for objects moved to glacier用于移动到冰川的对象的 AWS Lambda
【发布时间】:2018-03-16 05:58:45
【问题描述】:

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

由于我需要限制用户在我的应用程序中使用该文件(存档文件),我正在寻找一种方法来获取通知(通过 SQS)或在对象为实际上搬到了冰川。

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

让我知道是否有任何方法可以配置此行为或我可以使用任何其他方法来实现此行为。

问候。

【问题讨论】:

  • 如果使用listObjectKeyslistBucket可以获取对象的存储类。由于未触发事件,因此您必须以编程方式进行检查。

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


【解决方案1】:

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

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

此外,AWS 文档指出:

您将不会收到来自生命周期策略或失败操作的自动删除的事件通知。

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

【讨论】:

  • 如果 AWS 正在更改对象的状态,最好将事件更新到系统中。
  • 谢谢马特,暂时我已经实现了一个扫描器,它将扫描对象并更新应用程序数据库中的状态。但我认为这应该是 AWS 未来增强路线图的一部分,因为它将有助于世界各地的团队尝试实施的许多此类用例。
猜你喜欢
  • 2020-12-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多