put-bucket-logging

put-bucket-logging用于为向量Bucket开启日志转存功能,可将OSS的访问日志按照固定命名规则,以小时为单位生成日志文件写入您指定的Bucket。

注意事项

在开启日志转存之前,请确保您已了解该功能。详情请参见日志转存

权限说明

阿里云账号默认拥有全部权限。阿里云账号下的RAM用户或RAM角色默认没有任何权限,需要阿里云账号或账号管理员通过RAM PolicyBucket Policy授予操作权限。

API

Action

说明

PutBucketLogging

oss:PutBucketLogging

Bucket开启日志转存功能。

oss:PutObject

Bucket开启日志转存功能时,如果日志写入的目标Bucket是另一个Bucket,则需要有目标Bucket此操作的权限。

命令格式

ossutil vectors-api put-bucket-logging --bucket value --bucket-logging-status value [flags]

参数

类型

说明

--bucket

string

Bucket的名称。

--bucket-logging-status

string

存储访问日志状态信息的容器。

说明

put-bucket-logging命令对应API接口PutBucketLogging

--bucket-logging-status

--bucket-logging-status配置选项支持JSON语法,当选项值包含file://前缀时,表示从文件中读取配置。

{
  "LoggingEnabled": {
    "TargetBucket": "string",
    "TargetPrefix": "string",
	"LoggingRole": "string"
  }
}
说明

关于支持的全局命令行选项,请参见支持的全局命令行选项

使用示例

以下示例展示了如何为名为examplebucket的存储空间开启日志转存功能,日志文件前缀为MyLog-,存储访问日志的Bucketexamplebucket

  • 使用JSON配置文件,bucket-logging-status.json内容如下:

    {
      "BucketLoggingStatus": {
        "LoggingEnabled": {
          "TargetBucket": "examplebucket",
          "TargetPrefix": "MyLog-",
          "LoggingRole": "AliyunOSSLoggingDefaultRole"
        }
      }
    }

    命令示例如下:

    ossutil vectors-api put-bucket-logging --bucket examplebucket --bucket-logging-status file://bucket-logging-status.json
  • 使用JSON配置参数,命令示例如下:

    ossutil vectors-api put-bucket-logging --bucket examplebucket --bucket-logging-status "{\"BucketLoggingStatus\":{\"LoggingEnabled\":{\"TargetBucket\":\"examplebucket\",\"TargetPrefix\":\"MyLog-\",\"LoggingRole\":\"AliyunOSSLoggingDefaultRole\"}}}"