Using RabbitMQ plug-ins
RabbitMQ supports various plug-ins to extend its core functions. IBM Cloud® Messages for RabbitMQ comes with a selection of plug-ins that are already enabled on your deployment. Plug-in management is handled by the Messages for RabbitMQ service. Users cannot enable or disable plug-ins.
Available Messages for RabbitMQ plug-ins
Plug-in | Name |
---|---|
Shovel plug-in | rabbitmq_shovel |
Shovel Management plug-in | rabbitmq_shovel_management |
Delayed Message plug-in | rabbitmq_delayed_message_exchange |
STOMP plug-in | rabbitmq_stomp |
RabbitMQ Management plug-in | rabbitmq_management |
JMS plug-in | rabbitmq_jms_topic_exchange |
MQTT plug-in | rabbitmq_mqtt |
Shovel plug-in
Messages for RabbitMQ comes with the Shovel plug-in, rabbitmq_shovel
, and the Shovel Management plug-in, rabbitmq_shovel_management
,
enabled. You can configure the plug-in through both the RabbitMQ Management plug-in UI and its accompanying API.
The Shovel Status and Shovel Management links appear under the Admin tab.

If you do not see the Admin tab, you might need to log in to the management UI with the admin user.
In the RabbitMQ Management API, the Shovel Management plug-in adds endpoints for listing, creating, and deleting shovels. Usage and examples are in the GitHub repository's documentation.
Delayed Message plug-in
The delayed message plug-in, rabbitmq_delayed_message_exchange
is a third-party plug-in that adds delayed messaging and scheduled messaging
to RabbitMQ.
To use the plug-in, declare an exchange with the type x-delayed-type
. To delay a message, publish it with the x-delay
header with the number of milliseconds to delay the message. More detailed usage information is in
the plug-in's documentation.
STOMP plug-in
The RabbitMQ STOMP plug-in, rabbitmq_stomp
, supports sending STOMP-formatted messages through RabbitMQ. The
plug-in enables a port to handle STOMP traffic on your deployment, and it is TLS/SSL secured. The connection information for STOMP clients is in the stomp_ssl
section of your deployment's connection strings.
RabbitMQ Management plug-in
The RabbitMQ Management plug-in, rabbitmq_management
, provides access to your deployment through a web browser, rabbitmqadmin
, and through the RabbitMQ API. For more information, see Connecting with the RabbitMQ Management plug-in.
JMS plug-in
The RabbitMQ JMS Topic Exchange plug-in, rabbitmq_jms_topic_exchange
, is enabled by default for Messages for RabbitMQ deployments. This plug-in adds server-side support for the RabbitMQ JMS client and supports JMS topic routing plus selection based on JMS SQL selection rules.
The RabbitMQ JMS Client is required to communicate with the plug-in. Review the JMS Client documentation page that is provided by RabbitMQ for more detailed information on installation and configuration, along with examples.
More detailed information about the JMS plug-in can also be found in the RabbitMQ JMS Topic Exchange plug-in GitHub repo.
MQTT plug-in
The MQTT plug-in, rabbitmq_mqtt
, is enabled by default for Messages for RabbitMQ deployments. Information on using the MQTT plug-in is available on the MQTT plug-in page.