调用 WebTracks 接口批量上传日志到指定的日志主题中。
本接口用于将多条结构化日志上传到指定的日志主题中。
数据上传要求:
日志上传相关的接口(PutLogs、WebTracks)共用一个调用频率和流量限制的额度,具体限制如下:
说明
参数 | 参数类型 | 是否必选 | 示例值 | 说明 |
---|---|---|---|---|
Content-Type | String | 必选 | application/json | 日志内容的格式。固定为 application/json。 |
x-tls-bodyrawsize | String | 必选 | 1024 | 请求体的原始大小(压缩前),单位为 Byte。 |
x-tls-compresstype | String | 可选 | lz4 | 请求体的压缩格式。默认不压缩。 |
下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
ProjectId | String | 是 | 5b********* | 日志项目 ID。 |
TopicId | String | 是 | 4a********* | 日志主题 ID。 |
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Logs | Array of Log | 必选 |
| 日志组(LogGroup),表示由多个 Log 组成的集合,一个 Log 表示一条日志。 说明 一个 LogGroup 中 Log 个数不能超过 10000。 |
Source | String | 可选 | postman | 日志来源,一般使用机器 IP 作为标识。 |
Logs 说明
参数 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Key | String | 必选 | tap1 | 单条日志里某个字段的字段名(key)。 |
Value | String | 必选 | person-A | 单条日志里某个字段的字段内容(value)。value 需满足上传要求。 |
本接口无特有的返回参数。更多信息请见返回结构。
POST https://tls-{Region}.ivolces.com/WebTracks?TopicId=c1******&ProjectId=c2****** <公共请求头> Content-Type: application/json x-tls-bodyrawsize: 1024 { "Source": "postman", "Logs": [ { "tap1": "person-A", "tap2": "action-A" }, { "tap1": "person-B", "tap2": "action-B" } ] }
HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 ...
下表为您列举了该接口与业务逻辑相关的错误码。公共错误码请参见公共错误码文档。
错误码(Code) | HTTP 状态码 | 错误信息(Message) | 说明 |
---|---|---|---|
InvalidArgument | 400 | Invalid argument key %s, value %s, please check argument. | 参数不合法。 |
DeserializeFailed | 400 | Deserialization failed, please check argument. | 反序列化失败。 |
InvalidArgument | 400 | Parameter count is less than 2 | Get 请求除去 ProjectID 和 TopicID 外,key 不能少于 2 个。 |
TopicNotExist | 404 | Topic does not exist. | 日志主题不存在。 |
InternalServerError | 500 | We encountered an unexpected server error, please try again later. | 服务器内部错误。 |