有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
当一条消息从生产者发送到 TDMQ Pulsar 版服务端,再由消费者进行消费,TDMQ Pulsar 版会完整记录这条消息中间的流转过程,并以消息轨迹的形式呈现在控制台。 消息轨迹记录了消息从生产端到 TDMQ Pulsar 版 服务端,最后到消费端的整个过程,包括各阶段的时间(精确到微秒)、执行结果、生产者 IP、消费者 IP 等。



操作场景

当您需要排查以下问题时,就可以使用 TDMQ Pulsar 版控制台的消息查询功能,按照时间维度或者根据日志中查到的消息 ID,来查看具体某条消息的消息内容、消息参数和消息轨迹。
查看某条消息的具体内容,具体参数。
查看消息由哪个生产 IP 发送,是否发送成功,消息到服务端的具体时间。
查看消息是否已持久化。
查看消费由哪些消费者消费了,是否消费成功,消息确认消费的具体时间。
需要做分布式系统的性能分析,查看 MQ 对相关消息处理的时延。

查询限制

消息查询最多可以查询近3天的消息。
一次性最多可以查询65536条消息。

前提条件

已经参见 SDK 文档 部署好生产端和消费端服务,并在7天内有消息生产和消费。

操作步骤

1. 登录 TDMQ Pulsar 版控制台,在左侧导航栏单击消息查询
2. 在消息查询页面,首先选择地域和环境,再选择需要查询的时间范围,如果您知道对应的消息 ID,也可以输入消息 ID 进行精准查询。
3. 单击查询,下方列表会展示所有查询到的结果并分页展示。



4. 找到您希望查看内容或参数的消息,单击操作列的查看详情,即可查看消息的基本信息、内容(消息体)以及参数。


5. 单击操作列的查看消息轨迹,或者在详情页单击 Tab 栏的消息轨迹,即可查看该消息的消息轨迹(详情请参见 消息轨迹查询结果说明)。



消息轨迹查询结果说明

消息轨迹查询出来的结果分为三段:消息生产、消息存储和消息消费。
消息生产
消息存储
消息消费
参数
说明
生产地址
对应生产者的地址以及端口。
生产时间
TDMQ Pulsar 版服务端确认接收到消息的时间,精确到毫秒。
生产状态
表示消息生产成功或失败,如果状态为失败一般是消息在发送过程中遇到了头部数据部分丢失,以上几个字段可能会为空值。

参数
说明
存储时间
消息被持久化的时间(由于当前 TDMQ Pulsar 版统一为强一致模式,消息持久化后才会被确认,所以该时间与生产时间一致,高性能模式下此时间会与生产时间不一致)。
存储耗时
消息从被持久化到 TDMQ Pulsar 版服务端接收到确认信息的时间,精确到毫秒。
存储状态
表示消息持久化成功或失败,如果状态为失败则表明消息未落盘成功,可能由于底层磁盘损坏或无多余容量导致,遇见此类情况需尽快提工单咨询。

消息消费是以列表形式呈现的。TDMQ Pulsar 版支持多订阅模式,一条消息可能会被多个订阅中的多个消费者消费。
列表中展示的信息说明:
参数
说明
订阅名称
订阅者的名称。
订阅模式
订阅模式,共有shared/Key-shared/Exclusive/Failover 四种,详细说明请参见 订阅模式
推送次数
TDMQ Pulsar 版服务端向消费者投递该消息的次数。
最后推送时间
TDMQ Pulsar 版服务端最后一次向消费者投递该消息的时间。
消费状态
未推送:TDMQ Pulsar 版服务端还未向消费者投递消息。
已推送:TDMQ Pulsar 版服务端已向消费者投递消息,未接收到消费者回复的确认消息。
已确认:消费者回复确认信息(ACK)到 TDMQ Pulsar 版服务端,服务端接收到确认信息。
单击订阅名称左方的右三角,查看服务端每次推送消息的详情。
参数
说明
推送次序
TDMQ Pulsar 版服务端第几次向消费者投递该消息。
消费者名称
即订阅名称。
消费地址
收到消息的消费者地址及端口。
推送时间
TDMQ Pulsar 版服务端向消费者投递消息的时间。
推送结果
已推送:TDMQ Pulsar 版服务端已向消费者投递消息,未接收到消费者回复的确认消息。
已确认:消费者回复确认信息(ACK)到 TDMQ Pulsar 版服务端,服务端接收到确认信息。
超时未确认:已超时,服务端仍未接收到确认信息,将再次投递消息。