GetCursor - 通过时间查询Cursor

可以根据时间获取对应的游标(Cursor)。

接口说明

  • Host 由 Project 名称和日志服务 Endpoint 构成,您需要在 Host 中指定 Project。

  • Cursor 与 Project、Logstore、Shard 的关系如下:

    • Project 下有多个 Logstore。
    • 每个 Logstore 会有多个 Shard。
    • 通过 Cursor 可以获得特定日志对应的位置。

调试

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

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
log:GetCursorOrDataget
  • LogStore
    acs:log:{#regionId}:{#accountId}:project/{#ProjectName}/logstore/{#LogstoreName}
  • log:TLSVersion

请求语法

GET /logstores/{logstore}/shards/{shardId}?type=cursor HTTP/1.1

请求参数

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

project 名称。

ali-test-project
logstorestring

Logstore 名称。

sls-test-logstore
shardIdinteger

Shard ID。

1
fromstring

时间点(Unix 时间戳)或者字符串beginend

begin

通过 from 可以在 Shard 中定位生命周期内的日志,假设 Logstore 的生命周期为[begin_time,end_time)from=from_time,那么:

  • from_time ≤ begin_time or from_time = "begin"时:返回时间点为 begin_time 对应的 Cursor 位置。
  • from_time ≥ end_time or from_time = "end"时:返回当前时间点下一条将被写入的 Cursor 位置(当前该 Cursor 位置上无数据)。
  • from_time > begin_time and from_time < end_time时:返回第一个服务端接收时间大于等于 from_time 的数据包对应的 Cursor。
说明 Logstore 生命周期由属性中 TTL 字段指定。例如,当前时间为2018-11-11 09:00:00,TTL=5。则每个 Shard 中可以消费的数据时间段为 [2018-11-05 09:00:00,2018-11-11 09:00:00),这里的时间指的是服务端时间。更多信息,请参见数据保存时间

返回参数

名称类型描述示例值
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
object

Cursor 值。

cursorstring

Cursor 值。

MTQ0NzI5OTYwNjg5NjYzMjM1Ng==

示例

正常返回示例

JSON格式

{
  "cursor": "MTQ0NzI5OTYwNjg5NjYzMjM1Ng=="
}

错误码

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

HttpStatusCodeErrorCodeErrorMessage错误码描述
400ParameterInvalidParameterInvalid无效参数。
400ShardNotExistShard ShardID does not exist.Shard 不存在。
400LogStoreWithoutShardThe logstore has no shard.Logstore 没有 Shard。
404ProjectNotExistProject does not exist.Project 不存在。
404LogStoreNotExistLogstore does not exist.Logstore 不存在。
500InternalServerErrorSpecified Server Error Message.内部服务调用错误。

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