访问OSS的过程中会产生大量的访问日志。您可以通过日志转存功能将这些日志按照固定命名规则,以小时为单位生成日志文件写入您指定的存储空间(Bucket)。
开启日志转存
以下代码用于开启日志转存功能。
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
# Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。
endpoint: 'https://oss-cn-hangzhou.aliyuncs.com',
# 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret')
# 填写Bucket名称,例如examplebucket。
bucket = client.get_bucket('examplebucket')
# logging_bucket填写存放日志文件的目标Bucket。
# my-log填写日志文件存储的目录,如果指定此项,则日志文件将保存在目标Bucket的指定目录下。如果不指定此项,则日志文件将保存在目标Bucket的根目录下。
bucket.logging = Aliyun::OSS::BucketLogging.new(
enable: true, target_bucket: 'logging_bucket', target_prefix: 'my-log')
查看日志转存配置
以下代码用于查看日志转存配置。
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
# Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。
endpoint: 'https://oss-cn-hangzhou.aliyuncs.com',
# 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret')
# 填写Bucket名称,例如examplebucket。
bucket = client.get_bucket('examplebucket')
log = bucket.logging
puts log.to_s
关闭日志转存
以下代码用于关闭日志转存功能。
require 'aliyun/oss'
client = Aliyun::OSS::Client.new(
# Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。
endpoint: 'https://oss-cn-hangzhou.aliyuncs.com',
# 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
access_key_id: 'AccessKeyId', access_key_secret: 'AccessKeySecret')
# 填写Bucket名称,例如examplebucket。
bucket = client.get_bucket('examplebucket')
bucket.logging = Aliyun::OSS::BucketLogging.new(enable: false)
相关文档
- 关于开启日志转存功能的API接口说明,请参见PutBucketLogging。
- 关于查看日志转存配置的API接口说明,请参见GetBucketLogging。
- 关于关闭日志转存功能的API接口说明,请参见DeleteBucketLogging。