开发者社区 问答 正文

日志服务的GetShipperStatus有什么用处?





请求参数

参数名称类型是否必须描述
logstoreNamestring日志库名称,同一 project 下唯一
shipperNamestring日志投递规则名称,同一 logstore 下唯一
frominteger日志投递任务创建时间区间
tointeger日志投递任务创建时间区间
statusstring默认为空,表示返回所有状态的任务,目前支持 success/fail/running 等状态
offsetinteger返回指定时间区间内投递任务的起始数目,默认值为 0
sizeinteger返回指定时间区间内投递任务的数目,默认值为 100,最大为 500


请求头


GetShipperStatus 接口无特有请求头。关于 Log Service API 的公共请求头,请参考 公共请求头

响应头


GetShipperStatus 接口无特有响应头。关于 Log Service API 的公共响应头,请参考 公共响应头

响应元素


请求成功,其响应 Body 会包括指定的日志投递任务列表:

名称类型描述
countinteger返回的任务个数。
totalinteger指定范围内任务总数。
statisticsjson指定范围内任务汇总状态,具体请参考下表。
tasksarray指定范围内投递任务具体详情,具体请参考下表。

[backcolor=transparent]statistics 内容:
名称类型描述
runninginteger指定范围内状态为 running 的任务个数。
successinteger指定范围内状态为 success 的任务个数。
failinteger指定范围内状态为 fail 的任务个数。

[backcolor=transparent]tasks 内容:
名称类型描述
idstring具体投递任务的任务唯一 ID。
taskStatusstring投递任务的具体状态,可能为 running/success/fail 中的一种。
taskMessagestring投递任务失败时的具体错误信息。
taskCreateTimeinteger投递任务创建时间。
taskLastDataReceiveTimeinteger投递任务中的最近一条日志到达服务端时间(非日志时间,是服务端接收时间)。
taskFinishTimeinteger投递任务结束时间。


错误码


除了返回 Log Service API 的 通用错误码,还可能返回如下特有错误码:
HTTP 状态码ErrorCodeErrorMessage
404ProjectNotExistProject {ProjectName} not exist
404LogStoreNotExistlogstore {logstoreName} not exist
400ShipperNotExistshipper {logstoreName} not exist
500InternalServerErrorinternal server error
400ParameterInvalidstart time must litter than end time
400ParameterInvalidonly support query last 48 hours task status
400ParameterInvalidstatus only contains success/running/fail


细节描述


投递任务状态查询时间区间只能指定为最近 24 小时之内。

请求示例:





展开
收起
轩墨 2017-10-23 14:21:14 2157 分享 版权
阿里云 AI 助理回答

根据您提供的信息,这是关于阿里云日志服务(Log Service)中查询日志投递任务状态(GetShipperStatus)接口的详细说明。此接口允许用户获取指定日志库(logstore)中日志投递规则(shipper)的任务状态信息。下面是对使用该接口的关键点和示例的总结:

请求参数说明

  • logstoreName (string, 必须): 日志库的名称,在同一项目(project)下必须唯一。
  • shipperName (string, 必须): 日志投递规则的名称,在同一日志库下唯一。
  • from (integer, 必须): 查询日志投递任务创建时间区间的起始时间(Unix时间戳,单位为秒)。
  • to (integer, 必须): 查询日志投递任务创建时间区间的结束时间(Unix时间戳,单位为秒)。
  • status (string, 可选): 过滤任务状态,默认为空表示返回所有状态的任务,支持的状态包括 successfailrunning 等。
  • offset (integer, 可选): 返回结果的起始偏移量,默认值为0。
  • size (integer, 可选): 单次请求返回的结果数量,默认值为10,最大为500。

注意事项

  • 查询的时间范围限制在最近24小时内。
  • 错误码中列出了可能遇到的特定错误情况,如项目不存在、日志库不存在、投递规则不存在等。

响应结构

响应会包含任务的总数、统计信息(按状态分类的任务数),以及具体任务的详情列表,包括每个任务的ID、状态、错误信息、创建时间、最后接收数据时间和完成时间等。

示例请求

虽然您提到请求示例,但未直接提供,一个典型的HTTP GET请求示例(使用cURL命令)可能如下所示,假设已替换为实际的值:

curl -X GET \
     'https://log-cn-hangzhou.aliyuncs.com/logstores/your_logstore_name/shippers/your_shipper_name/status?from=1629900000&to=1629986399' \
     -H 'Authorization: YOUR_ACCESS_KEY_ID:YOUR_SIGNATURE' \
     -H 'x-log-bodyrawsize: 0' \
     -H 'Content-Type: application/json'

请确保替换your_logstore_nameyour_shipper_nameYOUR_ACCESS_KEY_IDYOUR_SIGNATURE以及时间戳fromto为实际的值,并根据需要调整其他可选参数。此外,签名生成需遵循阿里云API调用规范,通常涉及AccessKey、Signature等安全认证信息的处理。

以上内容基于您提供的接口描述,希望对您使用阿里云日志服务中的GetShipperStatus接口有所帮助。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答标签:
问答地址: