我的RabbitMQ是安装在docker里面的 所以我以下的方法都是根据这个路径去操作的
如果RabbitMQ安装在其他地方 请自行百度
- 显示正在运行的RabbitMQ容器的名称或ID:
docker ps
这将启动所有正在运行的 Docker 容器,并包含 RabbitMQ 容器的信息。
- 使用
docker exec
命令来运行rabbitmq-plugins list
命令:
假设RabbitMQ容器的名称或ID为
mq
,则命令如下:
docker exec mq rabbitmq-plugins list
这将在RabbitMQ容器内部执行
rabbitmq-plugins list
命令,并显示已安装的插件列表。
请注意,这种方法适用于在主机上查看 RabbitMQ 容器内的插件列表。如果您想要执行其他 RabbitMQ 管理操作,也可以使用命令来在容器内运行相应的命令
docker exec
。
以下是对这个表的一个解释
Based on the output you provided, it seems that you have RabbitMQ installed in a Docker container with various plugins enabled and running. Here's a breakdown of the output:
[E*] rabbitmq_management
and[e*] rabbitmq_management_agent
: These plugins are enabled and running, and they provide the RabbitMQ Management UI, which allows you to interact with and manage RabbitMQ through a web-based interface.
[ ] rabbitmq_amqp1_0
: This plugin is installed but not enabled. It adds support for the AMQP 1.0 protocol.
[ ] rabbitmq_auth_backend_cache
,[ ] rabbitmq_auth_backend_http
,[ ] rabbitmq_auth_backend_ldap
, and[ ] rabbitmq_auth_backend_oauth2
: These plugins provide different authentication backends for RabbitMQ.
[ ] rabbitmq_consistent_hash_exchange
,[ ] rabbitmq_event_exchange
,[ ] rabbitmq_federation
, and[ ] rabbitmq_federation_management
: These plugins offer various exchange types and federation capabilities.
[ ] rabbitmq_jms_topic_exchange
: This plugin adds support for the JMS topic exchange type.
[ ] rabbitmq_mqtt
: This plugin provides support for MQTT.
[ ] rabbitmq_peer_discovery_aws
,[ ] rabbitmq_peer_discovery_common
,[ ] rabbitmq_peer_discovery_consul
,[ ] rabbitmq_peer_discovery_etcd
, and[ ] rabbitmq_peer_discovery_k8s
: These plugins offer different peer discovery mechanisms for RabbitMQ clustering.
[ ] rabbitmq_prometheus
: This plugin enables metrics and monitoring through Prometheus.
[ ] rabbitmq_random_exchange
and[ ] rabbitmq_recent_history_exchange
: These plugins provide additional exchange types.
[ ] rabbitmq_sharding
,[ ] rabbitmq_shovel
, and[ ] rabbitmq_shovel_management
: These plugins are related to sharding and data shovel functionality.
[ ] rabbitmq_stomp
: This plugin adds support for STOMP.
[ ] rabbitmq_top
: This plugin adds support for a top-like tool for RabbitMQ.
[ ] rabbitmq_tracing
: This plugin enables message tracing in RabbitMQ.
[ ] rabbitmq_trust_store
: This plugin handles trust stores for TLS connections.
[e*] rabbitmq_web_dispatch
: This plugin is enabled and provides the Web Dispatcher.
[ ] rabbitmq_web_mqtt
and[ ] rabbitmq_web_mqtt_examples
: These plugins are related to MQTT over WebSockets.
[ ] rabbitmq_web_stomp
and[ ] rabbitmq_web_stomp_examples
: These plugins provide Web STOMP functionality.The plugins marked with
E*
ore*
are the ones currently running in the RabbitMQ instance.Overall, this shows that RabbitMQ is installed with a variety of plugins, and the management plugin, which provides the web interface, is enabled for you to interact with and manage RabbitMQ.
显然 我们没有安装trace插件 接下去 我们来安装一下trace插件
docker exec -it mq /bin/bash
请注意,
mq
应该是您RabbitMQ容器的名称,如果不是,请将其替换为正确的名称。
启用 "rabbitmq_tracing" 插件:
rabbitmq-plugins enable rabbitmq_tracing
确认插件是否已启用:
rabbitmq-plugins list
能够看到 "rabbitmq_tracing" 插件现在被标记为
[E*]
,表示它已经启用且正在运行。
请注意,启用该插件后,可以使用RabbitMQ的追踪功能来监视和追踪消息的流动。要详细了解如何使用 "rabbitmq_tracing" 插件来配置消息追踪以及如何查看追踪数据,可以参考RabbitMQ官方文档中关于该插件的使用说明和示例。
如果安装成功 在右侧会添加Tracing模块
可以用二种方法来添加模块
第一种 用linux
如何在RabbitMQ中添加新的消息追踪(Trace)。
在RabbitMQ中,使用 "rabbitmq_tracing" 插件,您可以创建和管理跟踪,以捕获消息的传入和传出以及其他相关事件。下面是添加新跟踪的一般步骤:
确保 "rabbitmq_tracing" 插件已启用:
使用以下命令检查插件是否已启用,并确保其状态为
[E*]
:rabbitmq-plugins list
创建新的跟踪:
使用以下命令创建一个新的跟踪:
rabbitmqctl trace_on
该命令将启动一个名为 "trace-xxxx" 的新跟踪,其中 "xxxx" 是一个唯一的标识符。跟踪默认情况下会捕获所有传入和传出的消息。
可选:为跟踪定义过滤条件:
如果您只希望跟踪特定队列、交换器或其他条件下的消息,您可以使用参数来定义过滤条件。例如,如果要跟踪特定队列的消息,可以使用以下命令:
rabbitmqctl trace_on queue=your_queue_name
您可以根据需要添加更多的过滤条件,以满足您的跟踪需求。
查看跟踪状态:
使用以下命令查看当前正在运行的跟踪:
rabbitmqctl trace_status
这将显示当前跟踪的状态信息,包括跟踪标识符、状态、目标、过滤条件等。
停止跟踪:
当您完成跟踪或不再需要时,可以使用以下命令停止跟踪:
rabbitmqctl trace_off
这将停止当前正在运行的跟踪。
请注意,跟踪可能会产生大量的日志数据,因此在使用跟踪功能时,请确保在适当的时间停止跟踪,以避免日志过多导致存储问题。
以上是在RabbitMQ中添加新消息追踪的基本步骤。如果您想进一步了解如何配置和使用 "rabbitmq_tracing" 插件的高级功能,请参阅RabbitMQ官方文档中关于 "rabbitmq_tracing" 的更详细说明。
第二种
RabbitMQ官网的界面添加新跟踪
在RabbitMQ官方的Web管理界面中,您可以通过以下步骤添加新的消息追踪(Trace):
确保 "rabbitmq_tracing" 插件已启用:
在您登录的RabbitMQ管理界面中,导航到 "Admin"(或 "Management")选项卡,然后在 "Plugins" 部分查找 "rabbitmq_tracing" 插件。如果它未启用,请点击 "Enable" 按钮以启用插件。
创建新的跟踪:
在 "Admin"(或 "Management")选项卡中,导航到 "Tracing" 子选项卡。
在 "Add a new trace" 部分,填写相关信息:
- Name:给跟踪一个名称,例如 "my_trace"。
- Pattern:可选,用于过滤需要追踪的队列或交换器的模式。
- Format:指定跟踪日志的格式,支持 "plain" 和 "json" 两种格式。
点击 "Add Trace" 按钮来创建新的跟踪。
查看和管理跟踪:
在 "Tracing" 子选项卡中,您将看到已创建的跟踪列表,其中会显示每个跟踪的名称、状态、目标、模式和格式等信息。
您可以通过 "Start", "Stop", "Delete" 按钮来启动、停止和删除跟踪。
点击跟踪名称,您可以查看该跟踪的详细信息,并可以在此界面上直接启动、停止或删除跟踪。
请注意,RabbitMQ的Web管理界面提供了一个简单且直观的方式来管理消息追踪。您可以根据需要添加、启动、停止和删除跟踪,以实现对消息流动的监控和分析。
如果您需要更高级的跟踪配置,或者想通过命令行工具进行更复杂的跟踪设置,可以参考前面提到的使用命令行工具的方法。同时,RabbitMQ的Web管理界面也提供了相应的命令行界面(Command UI),您可以在 "Admin"(或 "Management")选项卡中找到 "Command UI" 子选项卡来执行相应的命令。
- 点击“Admin”菜单,右边会多出一个“Tracing”的菜单,填写Name、Format、Max payload bytes、Pattern
- 然后点击“添加Add trace”即可添加一个日志
尝试发布消息,查看日志
以下图片来自网上大佬的图片 下方有大佬的文章连接
参考文章
如何查看RabbitMQ日志,Rabbitmq Trace日志的使用_Will Wang0715的博客-CSDN博客
【采坑】rabbitmq集群添加trace插件_mq traces_二黑黑黑的博客-CSDN博客
版权归原作者 姜小白程序 所有, 如有侵权,请联系我们删除。