我们有一个S3存储桶,以及一个包含所有访问日志的目录。我想列出比特定时间/日期更新的文件。这有什么办法可以实现吗?
该目录有超过100,000个文件,获取整个列表并迭代它们似乎效率低下。
提前致谢!
答案 0 :(得分:0)
我认为没有办法通过S3 API做到这一点。您需要将文件日期存储为S3对象Key的一部分,或者将S3对象的单独索引存储在您可以按日期查询的数据库中。
答案 1 :(得分:0)
好。对你到目前为止分享的内容做出一些假设 如果这些是ELB生成的访问文件,则存在名称格式的结构,如此处所述http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/access-log-collection.html
如果这些不是ELB日志,我解决这个问题的方法是使用S3生命周期策略,如下所述:http://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
在这种情况下,比您设置的持续时间早的对象可能已过期(即删除或移动到冰川。