如何查找S3存储桶的最后访问时间?

8

我有一个使用场景需要查找S3存储桶的最后访问时间,但是我无法找到相应的方法。虽然我们可以获取存储桶的LastModifiedTimeLastUpdatedTime,但我无法找到任何AWS API可以提供给我AWS S3存储桶的最后访问时间。一种方法是遍历存储桶内的所有对象,但这是非常昂贵的操作,我无法承担这样的成本。

请问有人能帮忙获取AWS S3存储桶的LastAccessedTime吗?我正在使用Python和boto3。


获取存储桶最后修改时间的链接:https://dev59.com/Fmkw5IYBdhLWcg3wu9Jh - upaang saxena
1
他已经可以根据问题获取LastModifiedTime或LastUpdatedTime。 - Yeshodhan Kulkarni
4个回答

2
即使我也面临着同样的问题。我需要访问我的S3存储桶中存在的对象的最后处理时间,以获取适合移动到S3存储类别的对象。不幸的是,我没有找到直接获取该时间的方法。
作为一种解决方法,您可以设置AWS Cloudtrail at Object Level
现在,您可以浏览这些日志,并在“eventName”键下查找“GetObject”事件,同时在“eventTime”键下查找事件的时间。
我知道这不是最优化的解决方案。但我没有找到其他实现它的方法。如果有更好的解决方案,请分享。

1

是的,但我认为我需要解析云跟踪日志并从中找到存储桶。 AWS 是否有关于此的直接 API? - upaang saxena
2
不好意思,目前没有API可以找到最后访问的记录。你需要通过CloudTrail来查找。 - Yeshodhan Kulkarni

1

1
鼓励提供外部资源的链接,但请添加上下文,以便其他用户了解其内容和原因。在引用重要链接时,请引用最相关的部分,以防外部资源无法访问或永久离线。 - atline

0

我没有准备好要发布的代码作为答案,但我有一种方法,可以使用它来实现。

您可以利用Amazon S3服务器访问日志

  1. S3服务器访问日志提供有关对Amazon S3存储桶中对象的请求的详细记录。
  2. Amazon S3定期收集访问日志记录, cons然后将记录合并到日志文件中,然后将日志文件上传到目标存储桶作为日志对象。
  3. 每个日志记录都包含诸如存储桶名称,请求中的操作以及接收请求的时间之类的信息。
  4. S3服务器访问日志格式提供有关日志文件格式的更多详细信息。

您需要使用目标存储桶来获取所需答案。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接