文档

PutWebtracking - 通过WebTracking批量写入日志

更新时间:

通过 WebTracking 方式单次写入多条日志。

接口说明

  • 已明确您查询日志所属的 Project 名称、所属地域、Logstore 名称等。如何查询,请参见管理 Project管理 Logstore

  • 适用于在网页或者客户端采集日志的场景。

  • 使用 Web Tracking 采集日志时,单个请求只能写入一条日志。更多信息,请参见使用 Web Tracking 采集日志

  • 针对日志量较大的场景,可以调用 PutWebTracking 接口将多条日志合并为一次请求。

  • 使用 PutWebTracking 接口写入日志时,需要先为 Logstore 打开 Web Tracking 开关。更多信息,请参见使用 Web Tracking 采集日志

  • 该接口不支持同时写入多个 Topic 的日志数据。

  • 使用该接口则表示该 Logstore 打开互联网匿名写入权限,没有经过有效鉴权(不需要 AccessKey),可能产生脏数据。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

当前API暂无授权信息透出。

请求语法

POST /logstores/{logstoreName}/track

请求参数

名称类型必填描述示例值
projectstring

Project 名称。

ali-test-project
logstoreNamestring

Logstore 名称。

ali-test-logstore
bodyobject

请求消息体。

__topic__string

日志主题。

topic
__source__string

日志来源。

source
__logs__array<object>

日志内容列表。每个元素为一个 JSON 对象,表示一条日志。

说明 说明WebTracking 采集的日志时间为日志到达服务端的时间,每条日志中无需设置__time__字段,如果存在该字段,将被服务端使用日志到达的时间覆盖。
object

日志内容列表。

string

日志内容。

{ "key1": "value1", "key2": "value2" }
__tags__object

日志标签。

string

日志标签。

{ "tag1": "value1", "tag2": "value2" }

仅支持如下三个请求头,在调用 PutWebTracking 接口时前两个为必选,格式和含义请参见公共请求参数文档。

  • x-log-apiversion: 0.6.0
  • x-log-bodyrawsize: 1234
  • x-log-compresstype: lz4

如果发送的数据没有经过任何压缩,不需要指定 x-log-compresstype。如果需要对数据压缩发送,当前仅支持 lz4 和 Deflate 算法,其分别对应的请求头为:x-log-compresstype: lz4x-log-compresstype: deflate。详细数据压缩步骤,请参见数据压缩

返回参数

名称类型描述示例值
headersobject
Serverstring

服务器名称。

nginx
Content-Typestring

返回的响应体的内容格式。

application/json
Content-Lengthstring

响应内容长度。

0
Connectionstring

是否长链接。取值包括:

  • close:不是长链接,则每个 HTTP 请求都会重新建立 TCP 连接。
  • keep-alive:长链接,TCP 连接建立后保持连接状态,节省连接所需时间和带宽。
close
Datestring

返回响应的时间。

Sun, 27 May 2018 08:25:04 GMT
x-log-requestidstring

服务端产生的标识,该请求的唯一 ID。

5B0A6B60BB6EE39764D458B5

示例

正常返回示例

JSON格式

{}

错误码

访问错误中心查看更多错误码。

HttpStatusCodeErrorCodeErrorMessage错误码描述
404ProjectNotExistProject does not exist.Project 不存在。
404LogStoreNotExistLogstore does not exist.Logstore 不存在。
400PostBodyInvalidFail to parse protobuf.Protobuffer 内容不合法,无法解析。
400PostBodyInvalidBody invalid error message.请求的 Body 不合法。
400PostBodyUncompressErrorPost body uncompressed fail.日志内容解压失败。
400PostBodyTooLargeBody size bodySize must little than 10485760.请求 Body (压缩前)不能超过 10MB。
500InternalServerErrorSpecified Server Error Message.内部服务调用错误。

更多信息,请参见通用错误码