全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 钉钉智能硬件
日志服务

GetCursor

更新时间:2017-06-07 13:26:11

GetCursor 根据时间获得游标(cursor),下图表示 project、logStore、shard 与 cursor 的关系:

  • Project 下有多个 logstore
  • 每个 logstore 会有多个 shard
  • 通过 cursor 可以获得特定日志对应的位置

relation

请求语法

  1. GET /logstores/ay42/shards/2?type=cursor&from=1402341900 HTTP/1.1
  2. Authorization: <AuthorizationString>
  3. Date: <GMT Date>
  4. Host: <Project Endpoint>
  5. x-log-apiversion: 0.6.0

请求参数

参数名称 类型 是否必须 描述
shard string
type string 此处为 cursor
from string 时间点(UNIX下秒数),或 begin,end
logstore 生命周期:

logstore 生命周期由属性中 lifeCycle 字段指定。例如,当前时间为 2015-11-11 09:00:00,lifeCycle=24。则每个 shard 中可以消费的数据时间段为 [2015-11-10 09:00:00,2015-11-11 09:00:00),这里的时间指的是 Server 端时间。

通过 from 关可以在 shard 中定位生命周期内的日志,假设 logstore 生命周期为 [begin_time,end_time),from=from_time

  1. from_time <= begin_time or from_time == "begin" : 返回时间点为 begin_time 对应的 cursor 位置
  2. from_time >= end_time or from_time == "end" : 返回当前时间点下,下一条将被写入的 cursor 位置(当前该 cursor 位置上无数据)
  3. from_time > begin_time and from_time < end_time : 返回第一个服务端接收时间 >= from_time 的数据包对应的 cursor

请求头

无特有请求头。关于 API 的公共请求头,请参考 公共请求头

响应头

无特有响应头。关于 API 的公共响应头,请参考 公共响应头

响应元素

  1. {
  2. "cursor": "MTQ0NzI5OTYwNjg5NjYzMjM1Ng=="
  3. }

细节描述

N/A

错误码

除了返回 API 的 通用错误码,还可能返回如下特有错误码:

HTTP 状态码 ErrorCode ErrorMessage
404 LogStoreNotExist Logstore {Name} not exist
400 ParameterInvalid Parameter From is not valid
400 ShardNotExist Shard {ShardID} not exist
500 InternalServerError Specified Server Error Message
400 LogStoreWithoutShard the logstore has no shard

示例

请求示例:
  1. GET /logstores/sls-test-logstore/shards/0?type=cursor&from=begin
  2. Header:
  3. {
  4. "Content-Length": 0,
  5. "x-log-signaturemethod": "hmac-sha1",
  6. "x-log-bodyrawsize": 0,
  7. "User-Agent": "log-python-sdk-v-0.6.0",
  8. "Host": "ali-test-project.cn-hangzhou-devcommon-intranet.sls.aliyuncs.com",
  9. "Date": "Thu, 12 Nov 2015 03:56:57 GMT",
  10. "x-log-apiversion": "0.6.0",
  11. "Content-Type": "application/json",
  12. "Authorization": "LOG 94to3z418yupi6ikawqqd370:+vo0Td6PrN0CGoskJoOiAsnkXgA="
  13. }
响应示例:
  1. Header:
  2. {
  3. "content-length": "41",
  4. "server": "nginx/1.6.1",
  5. "connection": "close",
  6. "date": "Thu, 12 Nov 2015 03:56:57 GMT",
  7. "content-type": "application/json",
  8. "x-log-requestid": "56440E0999248C070600C6AA"
  9. }
  10. Body:
  11. {
  12. "cursor": "MTQ0NzI5OTYwNjg5NjYzMjM1Ng=="
  13. }
本文导读目录