根据创建日期删除Amazon s3存储桶中的日志文件

时间:2013-07-26 18:46:47

标签: asp.net-mvc-4 amazon-s3

如何根据日期删除Amazon s3中的日志文件。我的日志文件位于我的存储桶中的日志文件夹文件夹中。

  string sdate = datetime.ToString("yyyy-MM-dd");
  string key = "logs/" + sdate + "*" ;
  AmazonS3 s3Client = AWSClientFactory.CreateAmazonS3Client();

   DeleteObjectRequest delRequest = new DeleteObjectRequest()
  .WithBucketName(S3_Bucket_Name)
  .WithKey(key);

   DeleteObjectResponse res = s3Client.DeleteObject(delRequest);

我试过这个,但似乎没有用。如果我把整个名字放在密钥中,我可以删除单个文件。但我想删除为特定日期创建的所有日志文件。

1 个答案:

答案 0 :(得分:2)

您可以使用S3的对象生命周期功能,特别是对象过期,删除给定前缀和给定年龄下的所有对象。这不是即时的,但它必须提出无数的个人要求。要删除所有内容,只需缩小年龄。

http://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html