PutBucketLogging
更新时间:2022-07-21
接口描述
本接口用来开启Bucket的访问日志并指定存放日志的Bucket和访问日志的文件前缀。访问日志的规则请参见日志命名规则和日志格式。
请求(Request)
-
请求语法
PUT /?logging HTTP/1.1 Host: <BucketName>.bj.bcebos.com Date: <Date> Authorization: <AuthorizationString> Content-Length: <ContentLength> { "targetBucket": "TargetBucketName", "targetPrefix": "TargetPrefixName" }
-
请求头域
无特殊参数
-
请求参数
名称 描述 类型 是否必须 targetBucket 指定存放访问日志的Bucket 字符串 是 targetPrefix 指定最终被保存的访问日志文件前缀 字符串 否(建议填写,用以区分访问日志)
响应(Response)
注意事项
- 用户必须是源Bucket的owner且拥有FULL_CONTROL权限,且是目标Bucket的owner。
- 源Bucket和目标Bucket必须同时存在。
- 源Bucket和目标Bucket必须属于同一个Region。
- 如果HTTP Body中Json不合法,BOS会返回CODE_MALFORMED_JSON错误。
- 如果HTTP Body中Json有无效字段,BOS会返回CODE_INAPPROPRIATE_JSON错误。
- 用户可将不同的源Bucket的Logging都保存在同一个目标Bucket内,建议指定不同的
targetPrefix
便于区分。 - 如果源Bucket开通了Logging功能,源Bucket被删除的同时,相应的Logging信息也将被删除。
- 如果Logging的目标Bucket被删除,则源Bucket的Logging功能会被自动关闭。
- 如果需要修改目标Bucket等信息,可再发送一个PutBucketLogging请求,请求中包含需要修改的信息。
targetPrefix
表示存储访问日志记录的Object名字前缀,可以为空。如果不为空时,targetPrefix
可以包含字母、数字、中划线、下划线、斜杠,且必须以字母开头,长度不大于32位。- 重复请求返回结果相同。
示例
-
请求示例
PUT /?logging HTTP/1.1 Host: BucketName.bj.bcebos.com Date: Tue, 17 May 2016 08:36:52 GMT Authorization: AuthorizationString Content-Length: 55 { "targetBucket": "dscbucket", "targetPrefix": "mylog/" }
-
响应示例
HTTP/1.1 200 OK x-bce-request-id: 1a5fd81e-626b-45b3-a885-15fff9cd106c Date: Tue, 17 May 2016 08:36:52 GMT Content-Length: 0 Server: BceBos