操作场景
本章节指导您通过查询消息功能查看具体的消息内容,以及确定消息是否生产/消费成功。
分布式消息服务RocketMQ提供三种消息查询的方法:按Topic查询、按Message ID查询和按Message Key查询。
- 按Topic查询:查询某时间段内指定Topic下所有的消息。此方法属于范围查询,查询到的消息可能比较多。
- 按Message ID查询:查询指定Message ID的消息。此方法属于精确查找,可以快速查询到某一条消息。
- 按Message Key查询:查询指定Message Key的消息。此方法属于精确查找,可以快速查询到某一条消息。
前提条件
- 已创建RocketMQ实例和Topic。
- 如果通过按Message ID查询,需要提前获取消息所在的Topic名称和消息的Message ID。
- 如果通过按Message Key查询,需要提前获取消息所在的Topic名称和消息的Message Key。
- 查询消息轨迹前,请先开启消息轨迹。
查询消息内容
- 登录分布式消息服务RocketMQ控制台。
- 单击RocketMQ实例的名称,进入实例详情页面。
- 在左侧导航栏,单击“消息查询”,进入“消息查询”页面。
图1 查询消息
- 选择以下任意一种方法,查询消息。
- 按Topic查询:“Topic”选择待查询消息的Topic名称,“队列”选择待查询消息的队列,“存储时间”选择待查询消息的时间段,单击“查询”。
- 按Message ID查询:“Topic”选择待查询消息所在的Topic名称,“Message ID”输入待查询消息的Message ID,单击“查询”。
- 按Message Key查询:“Topic”选择待查询消息所在的Topic名称,“Message Key”输入待查询消息的Message Key,单击“查询”。
- 在待查询消息所在行,**单击“查看详情”,查看消息的具体内容。
查询消息轨迹
- 登录分布式消息服务RocketMQ控制台。
- 单击RocketMQ实例的名称,进入实例详情页面。
- 在左侧导航栏,单击“消息查询”,进入“消息查询”页面。
- 选择以下任意一种方法,查询消息。
- 按Topic查询:“Topic”选择待查询消息的Topic名称,“队列”选择待查询消息的队列,“存储时间”选择待查询消息的时间段,单击“查询”。
- 按Message ID查询:“Topic”选择待查询消息所在的Topic名称,“消息ID”输入待查询消息的Message ID,单击“查询”。
- 按Message Key查询:“Topic”选择待查询消息所在的Topic名称,“消息ID”输入待查询消息的Message Key,单击“查询”。
- 在待查询消息所在行,单击“消息轨迹”,查看消息的轨迹,确定是否生产/消费成功。
消息轨迹的参数说明如表1所示。
表1 消息轨迹的参数说明
参数 | 参数说明 |
---|---|
生产者状态 | 生产者状态如下: 1.发送成功:消息发送成功,服务端已经成功存储消息。 2.提交成功:允许消费者消费此事务消息。 3.回滚:事务消息将被丢弃,不允许消费者消费此事务消息。 4.未知,待确认:事务消息状态暂时无法确定,等待固定时间后,服务端向生产者进行消息回查。 |
生产耗时 | 生产者发送消息的耗时。 |
生产地址 | 生产者的IP地址和端口号。 |
消费者状态 | 消费者状态如下: 1.消费成功消费超时消费异常 2.消费返回NULL消费失败 |
消费时间 | 消费消息的时间。 |
消费耗时 | 消费者消费消息的耗时。 |
消费地址 | 消费者的IP地址和端口号。 |