调用OnsTraceQueryByMsgId通过传入Topic名称和Message ID创建轨迹查询任务,得到该查询任务的ID。

使用说明

业务方记录了某消息的Message ID,并需要根据此Message ID查询该消息的投递轨迹信息,即可使用本接口创建查询任务。该接口返回任务ID后,再根据OnsTraceGetResult接口传入任务ID即可获取查询结果。

QPS限制

本接口的单用户QPS限制为30次/分钟。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。更多信息,请参见QPS限制

授权信息

默认仅限阿里云账号使用本接口,RAM用户只有在被授予了相关API操作权限后方可使用。本接口的授权信息如下表所示。更多信息,请参见权限策略和示例

API

Action

Resource(有命名空间)

Resource(无命名空间)

OnsTraceQueryByMsgId

mq:QueryTrace

acs:mq:*:*:{instanceId}%{topic}

acs:mq:*:*:{topic}

请求参数

名称 类型 是否必选 示例值 描述
Action String OnsTraceQueryByMsgId

系统规定参数。取值:OnsTraceQueryByMsgId

BeginTime Long 1570852800000

查询的时间范围的起始时间戳,单位:毫秒。

EndTime Long 1570968000000

查询的时间范围的结束时间戳,单位:毫秒。

InstanceId String MQ_INST_111111111111_DOxxxxxx

需查询的消息的Topic所对应的实例ID。

MsgId String 1E05791C117818B4AAC23B1BB0CE****

需查询的消息的ID,即Message ID。

Topic String test

需查询的消息的Topic。

返回数据

名称 类型 示例值 描述
QueryId String 272967562652883649157096685****

该查询任务的ID,可根据该任务ID再调用OnsTraceGetResult接口获取详细结果。

RequestId String B93332A3-160D-404F-880F-1F8736D1****

公共参数,每个请求的ID都是唯一的,可用于排查和定位问题。

示例

请求示例

http(s)://ons.cn-hangzhou.aliyuncs.com/?Action=OnsTraceQueryByMsgId
&BeginTime=1570852800000
&EndTime=1570968000000
&InstanceId=MQ_INST_111111111111_DOxxxxxx
&MsgId=1E05791C117818B4AAC23B1BB0CE****
&Topic=test
&<公共请求参数>

正常返回示例

XML格式

<OnsTraceQueryByMsgIdResponse>
  <RequestId>B93332A3-160D-404F-880F-1F8736D1039F</RequestId>
  <QueryId>272967562652883649157096685****</QueryId>
</OnsTraceQueryByMsgIdResponse>

JSON格式

{
	"RequestId": "B93332A3-160D-404F-880F-1F8736D1039F",
	"QueryId": "272967562652883649157096685****"
}

错误码

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

控制台操作

除了调用OnsTraceQueryByMsgId接口,您还可以通过消息队列RocketMQ版控制台创建消息轨迹查询任务。具体操作,请参见消息查询