全部产品
Search
文档中心

日志服务:PutWebtracking

更新时间:Oct 26, 2023

调用PutWebTracking接口将多条日志合并进行采集。

接口说明

  • 已创建并获取AccessKey。更多信息,请参见访问密钥

    阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维。RAM用户需具备操作日志服务资源的权限。具体操作,请参见创建RAM用户及授权

  • 已明确您查询日志所属的Project名称、所属地域、Logstore名称等。如何查询,请参见管理Project管理Logstore
  • 适用于在网页或者客户端采集日志的场景。
  • 使用Web Tracking采集日志时,单个请求只能写入一条日志。更多信息,请参见使用Web Tracking采集日志
  • 针对日志量较大的场景,可以调用PutWebTracking接口将多条日志合并为一次请求。
  • 使用PutWebTracking接口写入日志时,需要先为Logstore打开Web Tracking开关。更多信息,请参见使用Web Tracking采集日志
  • 该接口不支持同时写入多个Topic的日志数据。
  • 使用该接口则表示该Logstore打开互联网匿名写入权限,没有经过有效鉴权(不需要AccessKey),可能产生脏数据。

调试

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

请求头

该接口使用公共请求头,无特殊请求头。请参见公共请求参数文档。

请求语法

POST /logstores/{logstoreName}/track HTTP/1.1

请求参数

名称 类型 位置 是否必选 示例值 描述
project String Host ali-test-project

Project名称。

logstoreName String Path ali-test-logstore

Logstore名称。

Object Body

请求消息体。

__topic__ String Body topic

日志主题。

__source__ String Body source

日志来源。

__logs__ Array of Object Body

日志内容列表。

__tags__ Map Body { "tag1": "value1", "tag2": "value2" }

日志标签。

String Body { "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。详细数据压缩步骤,请参见数据压缩

返回数据

名称 类型 示例值 描述
Server String nginx

服务器名称。

Content-Type String application/json

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

Content-Length String 0

响应内容长度。

Connection String close

是否长链接。取值包括:

  • close:不是长链接,则每个HTTP请求都会重新建立TCP连接。
  • keep-alive:长链接,TCP连接建立后保持连接状态,节省连接所需时间和带宽。
Date String Sun, 27 May 2018 08:25:04 GMT

返回响应的时间。

x-log-requestid String 5B0A6B60BB6EE39764D458B5

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

示例

请求示例

POST /logstores/ali-test-logstore/track HTTP/1.1
Host:ali-test-project.cn-hangzhou.log.aliyuncs.com
Content-Type:application/json

{
  "__topic__" : "topic",
  "__source__" : "source",
  "__logs__" : [
      {
         "key1": "value1",
         "key2": "value2"
        },
       { 
         "key1": "value1", 
         "key2": "value2"
       }
     ],
  "__tags__" : {
    "tag1": "value1",
    "tag2": "value2"  
     }
}

正常返回示例

JSON格式

HTTP/1.1 200 OK

错误码

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

HttpStatusCode

ErrorCode

ErrorMessage

错误码描述

404

ProjectNotExist

Project does not exist.

Project不存在。

404

LogStoreNotExist

Logstore does not exist.

Logstore不存在。

400

PostBodyInvalid

Fail to parse protobuf.

Protobuffer内容不合法,无法解析。

400

PostBodyInvalid

Body invalid error message.

请求的Body不合法。

400

PostBodyUncompressError

Post body uncompressed fail.

日志内容解压失败。

400

PostBodyTooLarge

Body size bodySize must little than 10485760.

请求Body (压缩前)不能超过10MB。

500

InternalServerError

Specified Server Error Message.

内部服务调用错误。

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