设置桶日志分析配置-SetBucketRealTimeLog
功能介绍
该接口用于为存储桶开启日志分析功能。开启后,对象存储服务会将访问日志推送到日志服务(LTS),用户可通过LTS进行日志查询和分析。了解功能详情可参见日志管理概述。
接口约束
- 单桶只能绑定一个日志组的一个日志流,OBS桶、日志组、日志流需要处于同一个区域(Region)。
- 桶创建者和日志流创建者必须归属于同一个账号。
- 不支持专属对象存储。
- 不支持OBS智能边缘小站。
- 调用本接口前需要拥有以下LTS的相关权限:
- lts:logGroup:createLogGroup:如果要新建日志组,需要拥有该权限。不新建使用现有日志组无需该权限。
- lts:logStream:createLogStream:如果要新建日志流,需要拥有该权限。不新建使用现有日志流无需该权限。
- lts:logStream:listLogStream:为桶绑定日志流,必须拥有该权限。
授权信息
您必须是桶拥有者或拥有设置桶日志管理配置的权限,才能调用本接口,建议使用IAM或桶策略进行授权。了解更多OBS授权方式请参见OBS不同权限控制方式的区别。
- 如果使用IAM授权,那么请在“角色与策略授权”、“身份策略授权”两种IAM授权方式中选择一种,并配置相应权限:
- 如果使用角色与策略授权(旧版IAM,即IAM v3接口),需具备obs:bucket:PutBucketRealTimeLog权限,授权操作请参见创建IAM自定义策略。
- 如果使用身份策略授权(新版IAM,即IAM v5接口),如下表所示,需具备obs:bucket:putBucketRealTimeLog权限,授权操作请参见创建IAM自定义身份策略。
授权项
Action
访问级别
Access Level
资源类型(*为必须)
Resource Type (*: required)
Condition Key
Alias
依赖的授权项
Dependencies
obs:bucket:putBucketRealTimeLog
Write
bucket *
-
-
-
- obs:EpochTime
- obs:SourceIp
- obs:TlsVersion
- obs:CustomDomain
lts:logStream:listLogStream
List
logGroup *
g:ResourceTag/<tag-key>
- lts:topics:get
- lts:topics:list
-
- 如果使用桶策略进行授权,需具备obs:bucket:PutBucketRealTimeLog权限,具体操作请参见自定义创建桶策略。
URI
PUT /?realtimeLog
请求消息样式
以下为请求消息样例,请将示例中的BucketName修改为您的桶名,RegionID修改为桶所在的区域ID,可参考支持区域获取区域ID。
1 2 3 4 5 6 7 8 9 10 | PUT /?realtimeLog HTTP/1.1 Host: BucketName.obs.RegionID.myhuaweicloud.com Date: GMT Date Authorization: SignatureValue <?xml version="1.0" encoding="UTF-8"?> <RealTimeLogConfiguration> <ProjectId>project-id</ProjectId> <LogGroupId>log-group-id</LogGroupId> <LogStreamId>log-stream-id</LogStreamId> </RealTimeLogConfiguration> |
URI参数(URI Parameters)
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| realtimeLog | 是 | String | 参数解释: 用于标识API接口的作用与桶日志分析相关。 约束限制: 计算签名时,请在CanonicalizedResource中添加“/BucketName/?realtimeLog”,详情参见签名计算。 取值范围: realtimeLog 默认取值: 不涉及 |
请求头参数(Request headers)
该请求使用公共请求头,具体参见表3。
请求体参数(Request body)
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| RealTimeLogConfiguration | 是 | Container | 参数解释: 日志分析信息的容器。 约束限制: 单个桶只能配置一个日志流。 |
| ProjectId | 是 | String | 参数解释: 项目ID,日志组和日志流归属的项目ID。父节点:RealTimeLogConfiguration 约束限制: 该项目ID,需要与日志组、日志流所属的项目ID保持一致。 取值范围: 获取项目ID的方法,请参见如何获取项目ID。 默认取值: 不涉及 |
| LogGroupId | 是 | String | 参数解释: 日志组ID,用于指定日志推送的目标日志组。父节点:RealTimeLogConfiguration 约束限制:
取值范围: 日志组ID的获取方式参见如何获取日志组ID 默认取值: 不涉及 |
| LogStreamId | 是 | String | 参数解释: 日志流ID,用于指定日志推送的目标日志流,获取方式参见如何获取日志流ID。父节点:RealTimeLogConfiguration 约束限制:
取值范围: 日志流ID的获取方式参见如何获取日志流ID 默认取值: 不涉及 |
响应消息样式
1 2 3 | HTTP/1.1 status_code Date: date Content-Length: length |
响应头 (Response Headers)
该请求的响应消息使用公共响应头,具体请参考表1。
响应体 (Response Body)
本接口的响应消息中不携带响应体。
错误响应消息
详见MalformedXML、InvalidArgument,其余错误包含在错误码概述中。
请求示例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | PUT /?realtimeLog HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: Wed, 01 Jul 2015 02:40:06 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:mCOjER/L4ZZUY9qr6AOnkEiwvVk= Content-Length: 528 <?xml version="1.0" encoding="UTF-8"?> <RealTimeLogConfiguration> <ProjectId>067cf8******</ProjectId> <LogGroupId>4490333d-******</LogGroupId> <LogStreamId>05661fde-******</LogStreamId> </RealTimeLogConfiguration> |
响应示例
1 2 3 4 5 6 | HTTP/1.1 200 OK Server: OBS x-obs-request-id: BF26000001643663CE53B6AF31C619FD x-obs-id-2: 32AAAQAAEAABSAAkpAIAABAAAQAAEAABCT9CjuOx8cETSRbqkm35s1dL/tLhRNdZ Date: Wed, 01 Jul 2015 02:40:06 GMT Content-Length: 0 |