QueryMqttTraceMessagePublish - 查询消息发送轨迹

更新时间:

查询指定消息的发送轨迹。当消息的收发不符合预期时,您可以通过该接口查看消息的发布时间、发布客户端等详细信息,帮助您快速定位异常原因。

接口说明

  • 每成功调用一次 QueryMqttTraceMessagePublish 接口,都会计算为一次消息 TPS,从而影响您的计费。计费详情,请参见计费说明
  • 本接口的单用户 QPS 限制为 500 次/秒。超过限制,API 调用会被限流,这可能会影响您的业务,请合理调用。更多信息,请参见 QPS 限制

调试

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

授权信息

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

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

请求参数

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

云消息队列 MQTT 版实例地域(Region)的 ID。请参见服务接入点

cn-hangzhou
InstanceIdstring

云消息队列 MQTT 版实例的 ID,一定要和客户端实际使用的实例 ID 匹配。您可以在控制台实例详情页面的基础信息区域查看。

mqtt-cn-i7m26mf****
MsgIdstring

消息 ID,即 Message ID。

AC1EC0030EAB78308DB16A3EC773****
BeginTimelong

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

1618646400000
EndTimelong

查询范围的终止时间戳。单位:毫秒。

1621591200000

返回参数

名称类型描述示例值
object
RequestIdstring

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

69AD5550-BF22-438A-9202-A6E89185****
MessageTraceListsarray<object>

返回的消息发送轨迹列表。

MessageTraceListsobject
Timestring

消息的发送时间。

2021-05-21 15:08:19.210
Actionstring

消息动作。取值说明如下:

  • pub_mqtt:表示消息的发送者是云消息队列 MQTT 版客户端。

  • pub_mq:表示消息的发送者是云消息队列 RocketMQ 版客户端。

  • ServerSend:表示消息的发送者是云端 SDK。

pub_mqtt
ActionCodestring

消息动作的返回码。取值说明如下:

  • mqtt.trace.action.msg.pub.mqtt:消息动作取值为pub_mqtt时返回该参数值。

  • mqtt.trace.action.msg.pub.mq:消息动作取值为pub_mq时返回该参数值。

  • mqtt.trace.action.msg.server.send:消息动作取值为 ServerSend 时返回该参数值。

mqtt.trace.action.msg.pub.mqtt
ActionInfostring

消息动作的说明信息。取值说明如下:

  • Pub From Mqtt Client:消息动作取值为pub_mqtt时返回该参数值。

  • Pub From MQ:消息动作取值为pub_mq时返回该参数值。

  • Server Send:消息动作取值为 ServerSend 时返回该参数值。

Pub From Mqtt Client
MsgIdstring

消息 ID,即 Message ID。

AC1EC0030EAB78308DB16A3EC773BD95
ClientIdstring

发送消息的客户端 ID。

GID_test@@@producer

示例

正常返回示例

JSON格式

{
  "RequestId": "69AD5550-BF22-438A-9202-A6E89185****",
  "MessageTraceLists": [
    {
      "Time": "2021-05-21 15:08:19.210",
      "Action": "pub_mqtt",
      "ActionCode": "mqtt.trace.action.msg.pub.mqtt",
      "ActionInfo": "Pub From Mqtt Client",
      "MsgId": "AC1EC0030EAB78308DB16A3EC773BD95",
      "ClientId": "GID_test@@@producer"
    }
  ]
}

错误码

HTTP status code错误码错误信息描述
400MqttOwnerCheckErrorFailed to validate the instance permission实例权限校验失败
404ApiNotSupportThe specified API is not supported.当前接口不支持,请检查。
500SystemOverFlowAn error occurred while processing your request. Please try again.系统限流,请重试。

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

变更历史

变更时间变更内容概要操作
2025-02-10OpenAPI 错误码发生变更查看变更详情

控制台操作

除了调用 QueryMqttTraceMessagePublish 接口,您还可以通过微消息队列 MQTT 版控制台查看消息的发送轨迹。具体操作,请参见消息轨迹查询