Plugin Name | Enabling Method | Plugin Description | Use Limit and Risk |
rabbitmq_delayed_message_exchange | Disabled by default. You can manually enable it in Cluster > Cluster Details > Plugin Management. | The rabbitmq_delayed_message_exchange plugin allows you to implement the delayed message feature in RabbitMQ. This means you can send messages to a special exchange and specify a delay time. After the delay time elapses, the messages will be sent to the corresponding queues. | 1. This plugin is not designed for scenarios with a large number of delayed messages (hundreds of thousands or even millions of unscheduled messages). In production environments, carefully assess message volume to avoid issues such as unexpected delays or message loss. 2. Delayed messages have only one persistent replica on each node. If a node fails to operate properly (for example, due to a message backlog that triggers continuous out-of-memory (OOM) errors, causing restarts and preventing recovery), the delayed messages on that node cannot be consumed by consumers. 3. Delayed exchanges do not support setting mandatory, which means producers cannot detect unroutable messages through the basic.return event. Therefore, ensure that the corresponding exchanges, queues, and routing relationships exist before sending delayed messages. Details of risks and limitations can be found in the Official Use Limits of RabbitMQ delayed message plugins. To use delayed messages, you can see the two methods introduced in Configuring Delayed Messages. |
rabbitmq_event_exchange | Enabled by default and cannot be disabled. | The rabbitmq_event_exchange plugin publishes RabbitMQ server events, such as connection/channel creation and closure, and queue creation and deletion, to a dedicated exchange named amq.rabbitmq.event in the form of messages. | - |
rabbitmq_management | Enabled by default and cannot be disabled. | The rabbitmq_management plugin provides a web-based user interface and a group of HTTP APIs to manage and monitor RabbitMQ servers. | - |
rabbitmq_peer_discovery_k8s | Enabled by default and cannot be disabled. | The rabbitmq_peer_discovery_k8s plugin allows RabbitMQ nodes to automatically discover and connect to other RabbitMQ nodes in a Kubernetes environment to form a cluster. | - |
rabbitmq_prometheus | Enabled by default and cannot be disabled. | The rabbitmq_prometheus plugin is a monitoring plugin provided by RabbitMQ. It exports RabbitMQ metrics in a format supported by Prometheus. This enables monitoring and visualization of RabbitMQ performance and health using tools such as Prometheus and Grafana. | - |
rabbitmq_tracing | You can manually enable it in the Cluster Management > Vhost list. The plugin can be disabled. | The rabbitmq_tracing plugin traces messages passing through RabbitMQ, persists them to disks, and records them in log files. This saves time on issue location and debugging. | Enabling the rabbitmq_tracing plugin is a prerequisite for the message query feature in the Managed Edition RabbitMQ clusters. For specific description and use limits of the message query feature, see Querying Messages. |
rabbitmq_shovel | The plugin cannot be enabled in the console. | The rabbitmq_shovel plugin is used for unidirectional message migration between clusters, transmitting data through underlying client connections. The message source and destination can be in the same cluster or different clusters. | If you need to enable the plugin, carefully read the must-knows below. After confirmation, submit a ticket to contact technical personnel to enable the plugin in the background. 1. This plugin supports testing and business migrations, but is not recommended for production environments. Cluster stability issues from using it are not covered by the SLA commitment for TDMQ for RabbitMQ. 2. Clusters under the same account (or UIN) in the same region are interconnected. For clusters in different regions, establish network connectivity through Cloud Connect Network (CCN) before using the rabbitmq_shovel plugin for message migrations. |

Feedback