文档

PullData

更新时间:

调用PullData接口获取指定游标(Cursor)位置的日志数据。

接口说明

  • 获取日志时必须指定Shard。
  • 目前仅支持读取Protocol Buffer格式数据。
  • 请求语法中Host由Project名称和日志服务Endpoint构成,您需要在Host中指定Project。
  • 已创建并获取AccessKey。更多信息,请参见访问密钥

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

  • 已明确您查询日志所属的Project名称、所属地域、Logstore名称等。如何查询,请参见管理Project管理Logstore
  • 已获取游标Cursor。具体操作,请参见GetCursor

鉴权资源

下表列出了API对应的授权信息。您可以在RAM权限策略语句的Action元素中添加该信息,用于为RAM用户或RAM角色授予调用此API的权限。

动作(Action)

授权策略中的资源描述方式(Resource)

log:GetCursorOrData acs:log:{#regionId}:{#accountId}:project/{#ProjectName}/logstore/{#LogstoreName}

调试

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

请求头

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

请求语法

GET /logstores/{logstore}/shards/{shard}?type=log HTTP/1.1

请求参数

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

Project名称。

logstore String Path ali-test-logstore

Logstore名称。

shard String Path 0

Shard ID。

cursor String Query MTQ0NzMyOTQwMTEwMjEzMDkwNA

游标,表示从什么位置开始读取数据,相当于起点。

说明 如果Cursor取值小于Begin Cursor,则默认从Begin Cursor开始查询。
count String Query 1000

返回的Loggroup数目,最小值为1,最大值为1000。

endCursor String Query MTU1NzA1NzQwMTEwMjEzMDkwCg

结束游标,表示读取数据到什么地方结束,相当于终点。

说明 如果Cursor取值大于End Cursor,则返回空列表。

PullData接口的特有请求头如下所示:

  • Accept:application/x-protobuf
  • Accept-Encoding:lz4

其中,Accept-Encoding取值包括lz4、deflate或双引号(“”)之一。

返回数据

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

服务器名称。

Content-Type String application/json

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

Content-Length String 0

响应内容长度。

Connection String close

是否长链接。取值包括:

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

压缩格式。

Date String Sun, 27 May 2018 08:25:04 GMT

返回响应的时间。

x-log-requestid String 5B0A6B60BB6EE39764D458B5

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

x-log-count String 5

返回的LogGroup个数。

x-log-cursor String MTQ0NzMyOTQwMTEwMjEzMDkwNA

当前读取数据下一条Cursor。

x-log-bodyrawsize String 0

数据压缩前大小。

PullData接口的特有响应元素如下所示:

  • x-log-cursor:当前读取数据下一条Cursor。
  • x-log-end_cursor:当前读取数据最后一条Cursor。
  • x-log-count:当前返回数量。

响应元素为protobuf格式序列化后的数据(可能经过压缩)。

示例

请求示例

GET /logstores/ali-test-logstore/shards/{shard}?type=log?cursor=MTQ0NzMyOTQwMTEwMjEzMDkwNA&count=1000&endCursor=MTU1NzA1NzQwMTEwMjEzMDkwCg HTTP/1.1
Host:ali-test-project.cn-hangzhou.log.aliyuncs.com
Content-Type:application/json

正常返回示例

JSON格式

HTTP/1.1 200 OK

错误码

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

HttpStatusCode

ErrorCode

ErrorMessage

错误码描述

400

ParameterInvalid

Invalid cursor.

游标参数无效。

400

ParameterInvalid

ParameterCount should be in [0-1000].

count参数取值范围应该为[0-1000]。

404

ProjectNotExist

Project does not exist.

Project不存在。

404

LogStoreNotExist

Logstore does not exist.

Logstore不存在。

404

ShardNotExist

Shard does not exist.

Shard不存在。

500

InternalServerError

Specified Server Error Message.

内部服务调用错误。

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

  • 本页导读 (1)