如何找出S3 Bucket的最后访问时间?

时间:2017-05-20 14:03:25

标签: python-3.x amazon-web-services amazon-s3 boto boto3

我有一个用例,我需要找出S3存储桶的最后访问时间,但我无法找到这样做的方法。虽然,我们可以为存储桶获取 LastModifiedTime LastUpdatedTime ,但我找不到任何AWS API,这可以为我提供AWS S3的最后访问时间桶。一种方法是解析桶内的所有对象,但这是一项非常昂贵的操作,我无法负担。 有人可以帮我获取AWS S3 Bucket的 LastAccessedTime 吗?我正在使用Python和boto3。

3 个答案:

答案 0 :(得分:2)

即使我面临同样的问题。我需要访问S3存储桶中存在的对象的最后一个处理时间,以获取要移动到S3存储类的良好候选对象。不幸的是,我找不到直接获取时间的方法。

要解决您可以做的事情,请设置AWS Cloudtrail at Object Level

现在,您可以浏览这些日志并在“eventName”键下查找“GetObject”事件以及“eventTime”键下的事件时间。

我知道这不是优化解决方案。但我找不到任何其他方法来实现它。如果有人有更好的解决方案,请分享。

答案 1 :(得分:1)

您可以使用AWS Cloud Trail根据资源类型查找对资源的上次访问。

请参阅AWS的以下文档,该文档根据资源类型启用查询,在您的情况下为S3存储桶。

Resource Types Supported by CloudTrail API Activity History

答案 2 :(得分:1)

我知道为时已晚,但可以为其他人提供帮助。我们可以使用Bucket Metrics来查看有关S3存储桶利用率的详细信息。

https://docs.aws.amazon.com/AmazonS3/latest/user-guide/configure-metrics.html