访问日志简介
用户可以通过设置Bucket的访问日志配置,把对该Bucket的访问日志保存在指定的Bucket中,以供后续的分析。访问日志以文件的形式存在于指定的Bucket中,每小时会生成一个文本文件。文件名的格式为:
- <TargetPrefix><SourceBucket>-YYYY-mm-DD-HH-MM-SS-UniqueString
其中TargetPrefix由用户在配置中指定。
日志配置由如下部分组成:
- TargetBucket:目标Bucket名,生成的日志文件会保存到这个Bucket中。
- TargetPrefix:日志文件名前缀,可以为空。
更多关于访问日志文件名格式,日志格式请参考
Bucket访问日志。
开启日志功能
下面的代码开启日志功能,且把日志保存在 TargetBucket 中,日志文件名前缀为 logging- :
- using Aliyun.OSS;
- // 初始化OssClient
- var client = new OssClient(endpoint, accessKeyId, accessKeySecret);
- // 开启访问日志
- var request = new SetBucketLoggingRequest(bucketName, targetBucketName, "logging-");
- client.SetBucketLogging(request);
提示:
- bucketName 和 targetBucketName 可以为相同Bucket
- 完整代码请参考:GitHub
查看日志设置
- using Aliyun.OSS;
- // 初始化OssClient
- var client = new OssClient(endpoint, accessKeyId, accessKeySecret);
- var result = client.GetBucketLogging(bucketName);
- Console.WriteLine("Get bucket:{0} Logging, prefix:{1}, target bucket:{2}",
- bucketName, result.TargetPrefix, result.TargetBucket);
提示:
关闭日志功能
- using Aliyun.OSS;
- // 初始化OssClient
- var client = new OssClient(endpoint, accessKeyId, accessKeySecret);
- client.DeleteBucketLogging(bucketName);
提示:
- 日志功能关闭后,已经生成的日志文件不会删除
- 完整代码请参考:GitHub