rabbitMq怎么查看队列消息-Tracing日志

Trace 是Rabbitmq用于记录每一次发送的消息,方便使用Rabbitmq的开发者调试、排错。

1、启动Tracing插件

在RabbitMQ中默认是关闭的,需手动开启。此处rabbitMQ是使用docker部署的

## 进入rabbitMq中
docker exec -it rabbitmq1 bash
## 启动日志插件
rabbitmq-plugins enable rabbitmq_tracing
## 开启rabbitmq的tracing插件
rabbitmqctl trace_on

开启了插件后,无需重启,rabbitMq管理界面就会出现Tracing项,可新建追踪。

2、新建trace

新建trace时,JSON模式的数据会被Base64加密,不好观察,所以选择Text模式,同时可在Pattern中配置过滤条件

3、查看Tracing日志

当在浏览器上直接打开log时会出现汉字乱码

 右键下载后通过文本编辑器查看正常

 ##常用命令

# 查看打开的插件 
rabbitmq-plugins list
# 关闭trace功能
rabbitmqctl trace_off
# 停止tracing
rabbitmq-plugins disable rabbitmq_tracing

### RabbitMQ 消息追踪功能的实现与配置 #### 使用 Firehose 实现消息追踪 为了实现在 RabbitMQ 中的消息追踪,可以启用名为 Firehose 的特性[^1]。Firehose 是一种特殊类型的消费者,它会接收所有经过特定交换机的消息副本。这种方式使得开发者能够在不影响原有业务逻辑的情况下监控和调试消息流。 要激活此功能,需安装 `rabbitmq_tracing` 插件并重启服务: ```bash rabbitmq-plugins enable rabbitmq_tracing ``` 之后,在管理界面上可以看到一个新的虚拟主机选项卡叫做 "Traces",在这里可以选择想要跟踪哪个交换机以及设置目标队列用于存储被复制出来的消息数据。 #### 配置 Tracer Exchange 和 Trace Queue 当启用了上述插件后,可以通过创建一个 tracer exchange 来指定哪些消息应该被捕获到 trace queue 中去。通常情况下,这个特殊的 exchange 类型为 direct 或 topic,并且绑定至实际的应用程序使用的生产者所发送消息的目标exchange上。这样做的好处是可以灵活控制哪一部分流量进入日志记录流程而不必修改现有应用程序代码。 对于每一个希望监视其活动的常规 exchange ,都需要建立相应的 binding 关系指向 tracer exchange 。而后者则负责将接收到的信息转发给预先定义好的 trace queues 之一。这些queues中的内容就可以作为审计用途或是故障排查时的重要依据了。 #### 日志级别调整与其他注意事项 值得注意的是,虽然开启全面的日志记录有助于深入理解系统的运行状况,但这也会带来额外性能开销。因此建议仅在必要时候打开详细的trace模式,并及时关闭以减少资源消耗。另外还可以通过调整日志等级来平衡诊断信息量级与系统效率之间的关系。 最后提醒一点就是确保有足够的磁盘空间用来保存可能产生的大量日志文件;同时也要考虑到隐私保护方面的要求,避免敏感资料泄露风险。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值