RocketMQ集群如何打开消息轨迹的追踪?

对于一个消息,我想要知道,这个消息是什么时候从哪个Producer发送出来的?他在Broker端是进入到了哪个Topic里去的?他在消费者层面是被哪个Consumer什么时候消费出来的?

一、操作

我们有时候对于一条消息的丢失,可能就想要了解到这样的一个消息轨迹,协助我们去进行线上问题的排查,所以此时就可以使用RocketMQ支持的消息轨迹功能,我们看下面的配置过程。
首先需要在broker的配置文件里开启traceTopicEnable=true这个选项,
此时就会开启消息轨迹追踪的功能。


接着当我们开启了上述的选项之后,我们启动这个Broker的时候会自动创建出来一个内部的Topic,就是RMQ_SYS_TRACE_TOPIC,这个Topic就是用来存储所有的消息轨迹追踪的数据的。
接着做好上述这一切事情之后,我们需要在发送消息的时候开启消息轨迹,此时创建Producer的时候要用如下的方式,下面构造函数中的第二个参数,就是enableMsgTrace参数,他设置为true,就是说可以对消息开启轨迹追踪。

在订阅消息的时候,对于Consumer也是同理的,在构造函数的第二个参数设置为true,就是开启了消费时候的轨迹追踪。


思考一下:

一旦当我们在Broker、Producer、Consumer都配置好了轨迹追踪之后,其实Producer在发送消息的时候,就会上报这个消息的一些数据到内置的RMQ_SYS_TRACE_TOPIC里去此时会上报如下的一些数据:`Producer的信息、发送消息的时间、消息是否发送成功、发送消息的耗时。
.
接着消息到Broker端之后,Broker端也会记录消息的轨迹数据,包括如下:消息存储的Topic、消息存储的位置、消息的key、消息的tags。
.
然后消息被消费到Consumer端之后,他也会上报一些轨迹数据到内置的RMQ_SYS_TRACE_TOPIC里去,包括如下一些东西:
Consumer的信息、投递消息的时间、这是第几轮投递消息、消息消费是否成功、消费这条消息的耗时。


查询消息轨迹:
接着如果想要查询消息轨迹,也很简单,在RocketMQ控制台里,在导航栏里就有一个消息轨迹,在里面可以创建查询任务,你可以根据messageId、message key或者Topic来查询,查询任务执行完毕之后,就可以看到消息轨迹的界面了。
在消息轨迹的界面里就会展示出来刚才上面说的Producer、Broker、Consumer上报的一些轨迹数据了。

RocketMQ集群如何打开消息轨迹的追踪?相关推荐

  1. RocketMQ集群详解

    集群特点 (1)NameServer:是一个几乎无状态节点,可集群部署,节点之间无任何信息同步. (2)Broker:部署相对复杂,Broker分为Master与Slave,一个Master可以对应多 ...

  2. RocketMQ集群部署方案(DLedger)

    RocketMQ集群部署方案(DLedger) 一.基本配置 1.准备三台虚拟机,root密码 root ;IP地址: 192.168.xxx.xxx worker1 192.168.xxx.xxx ...

  3. 【RocketMQ】ubuntu18下部署RocketMQ集群

    技术架构 - Producer:消息发布的角色,支持分布式集群方式部署.Producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递,投递的过程支持快速失败并且低延迟. - Con ...

  4. RocketMQ集群(版本4.7.1)搭建教程

    快速搭建RocketMQ集群 前言:最近在学习了解RocketMQ,为了更好地对照了解,需要安装一套RocketMQ集群,自己实际上手操作一番.首先在google搜索一番,找了一篇教程,看了下,比较详 ...

  5. RocketMQ集群启动报错:java.lang.RuntimeException: Lock failed,MQ already started

    启动RocketMQ集群后报错: java.lang.RuntimeException: Lock failed,MQ already startedat org.apache.rocketmq.st ...

  6. 双RocketMq集群的搭建

    一.双Master RocketMq集群的搭建 1.服务器环境: 序号 IP 用户名 角色 模式 1 192.168.211.128 root nameServer1,brokerServer1 Ma ...

  7. 从生产故障解锁RocketMQ集群部署的最佳实践

    1.故障描述 RocketMQ 集群采取的部署架构为2主2从,其部署架构如下图所示: 其部署架构中一个非常明显的特点是一台物理机上分别部署了 nameserver,broker 两个进程. 其中一台机 ...

  8. 从年末生产故障解锁RocketMQ集群部署的最佳实践

    [CSDN 编者按]因为一次生产事故,导致年终奖泡汤!在一番问题查找之后,终于找到了罪魁祸首!MQ集群中某一台物理机内存引发的故障,从而导致系统异常重启,而更关键的问题是,为什么一台Broker由于内 ...

  9. 阿里二面:RocketMQ 集群 Broker 挂了,会造成什么影响?

    大家好,我是君哥.今天分享 RocketMQ 的 Broker 挂了,会带来什么影响. 面试官:你好,如果 RocketMQ 集群中的一个 Broker 挂了,会造成什么影响呢? 我:Broker 挂 ...

  10. rocketmq 集群部署

    架构图 部署环境 hostname ip 备注 mqnamesrv1 10.0.0.1 namesrv mqnamesrv2 10.0.0.2 namesrv mqbroker3 10.0.0.3 b ...

最新文章

  1. HDOJ 3966 Aragorn#39;s Story
  2. 时序数据库深入浅出之存储篇——本质LSMtree,同时 metric(比如温度)+tags 分片...
  3. Python之精心整理的二十五个文本提取及NLP相关的处理案例
  4. 数据库存储模型-数据存储
  5. MFC动态调用DLL
  6. java bean 单例模式_单例模式 - Beans_bag - 博客园
  7. 怎么通过MQTT查看数据是否上云端_设备工程师们的福利来啦!JSON数据采集网关帮你实现云端对接~...
  8. java 桌面图标插件_JavaSwing界面设计(所有控件及示例)预览.ppt
  9. 多层神经网络中的正则化代价函数解析
  10. windows server 2012 动态访问控制
  11. VMware vSphere 5.x 与 vSphere 6.0各版本功能特性对比
  12. 调节效应检验(一):线性回归分析
  13. 【JAVA】数据结构——堆的排序及相关面试题
  14. 如何使用TCPA300电流放大器和电流探头进行电流测试
  15. 动画三部曲--属性动画
  16. 5种高大上的yml文件读取方式,你知道吗?
  17. Android 之 自动拨号
  18. 微信小程序 图表chart
  19. ROS1云课→01简介和配置
  20. 《碟中谍6》阿汤哥:自律是时间的杀手

热门文章

  1. 两端固定弦的强迫振动 (特解法、冲量原理法、Fourier展开法)| 非齐次问题 | 偏微分方程(二十一)
  2. Android 在Launcher桌面添加应用快捷图标AppShortcuts/PinnedShortcuts(适用于Android 7.1(API25) 及更高)
  3. 联邦学习入门笔记(四)— 基于差分隐私的FL(ii)
  4. 解决连接不上gitlab的问题
  5. dllhost.exe进程占用CPU很高怎么解决?
  6. 关于矩阵快速幂の简单粗暴の理解
  7. 从输入 URL 到页面展示发生了什么?
  8. C++一元多项式的乘法运算(单链表实现)
  9. 初探BLE控制层(nimble)
  10. springboot流浪动物救助系统 计算机专业毕业设计源码78174