PutUserDefinedLogFieldsConfig

PutUserDefinedLogFieldsConfig接口用于为存储空间(Bucket)实时日志中的user_defined_log_fields字段进行个性化配置。您可以将OSS请求中用户关心的请求头或查询参数信息记录到该字段中去以便后续分析请求。

注意事项

  • 本功能将相关信息统一编码后填入固定字段user_defined_log_fields中。user_defined_log_fields字段的值是一个JSON文本Base64编码后的值,这个JSON文本默认有一个字段为“truncated”用于表示是否有截断发生,另外有两个字段“headers”和“querys”分别对应用户配置的请求头和查询参数信息。

  • 自定义请求头个数和查询参数的个数之和不能超过6。

  • 自定义请求头及查询参数的key、value长度总和不能超过1024字节,超过部分会被截断。

  • 请求头不支持下划线(_),可以使用短划线(-)替代。查询参数支持下划线(_)。

  • 请求头需要遵从HTTP协议的规定。必须是可打印的ASCII字符,即字符33到字符126,支持小数点(.),不支持冒号(:)。

请求语法

PUT /?userDefinedLogFieldsConfig HTTP/1.1
Date: GMT Date
Content-Length:ContentLength
Content-Type: application/xml
Host: BucketName.oss.aliyuncs.com
Authorization: SignatureValue
<?xml version="1.0" encoding="UTF-8"?>
<UserDefinedLogFieldsConfiguration>
	<HeaderSet>
		<header>header1</header>
		<header>header2</header>
		<header>header3</header>
	</HeaderSet>
	<ParamSet>
		<parameter>param1</parameter>
		<parameter>param2</parameter>
	</ParamSet>
</UserDefinedLogFieldsConfiguration>

当您在OSS ON云盒中调用该接口时,您需要将Host替换为云盒Endpoint。更多信息,请参见云盒Endpoint

请求头

此接口仅涉及公共请求头。更多信息,请参见公共请求头(Common Request Headers)

请求元素

名称

类型

是否必需

示例值

描述

UserDefinedLogFieldsConfiguration

容器

不涉及

用户自定义日志配置信息的容器。

子元素:HeaderSet、ParamSet

父元素:无

HeaderSet

容器

不涉及

自定义请求头配置信息的容器。

子元素:header

父元素:无UserDefinedLogFieldsConfiguration

header

字符串

header1

自定义请求头信息。

子元素:无

父元素:HeaderSet

ParamSet

容器

不涉及

自定义查询参数配置信息的容器。

子元素:parameter

父元素:无UserDefinedLogFieldsConfiguration

parameter

字符串

param1

自定义查询参数信息。

子元素:无

父元素:ParamSet

响应头

此接口仅涉及公共响应头。更多信息,请参见公共响应头(Common Response Headers)

示例

请求示例

PUT /?userDefinedLogFieldsConfig HTTP/1.1
Date: GMT Date
Content-Length:ContentLength
Content-Type: application/xml
Host: BucketName.oss.aliyuncs.com
Authorization: SignatureValue

<?xml version="1.0" encoding="UTF-8"?>
<UserDefinedLogFieldsConfiguration>
	<HeaderSet>
		<header>header1</header>
		<header>header2</header>
		<header>header3</header>
	</HeaderSet>
	<ParamSet>
		<parameter>param1</parameter>
		<parameter>param2</parameter>
	</ParamSet>
</UserDefinedLogFieldsConfiguration>

响应示例

HTTP/1.1 200 OK
x-oss-request-id: 534B371674125A4D8906008B
Date: Date
Content-Length: 0
Connection: keep-alive
Server: AliyunOSS