Menu

Community Plugins

For your convenience, we offer binary downloads of plugins which have been contributed by authors in the community. These plugins do not ship with the RabbitMQ server itself; you can download them from our community plugin archive.

The plugins are available compiled against various releases of RabbitMQ.

We offer no guarantee that these will even work against a given release of RabbitMQ. We build them at release time, and also when requested to by a plugin author.

The download links on this page let you download the latest build of the plugin, compiled against the latest feature release of RabbitMQ. Bugfix releases do not affect plugin compatibility. For older versions of plugins see the archive. See also how to install additional plugins.

When RabbitMQ is upgraded, all community plugins must be re-installed. This may mean installing newer versions of them. Alternatively, they can be disabled before or during the upgrade.

If you are the author of a plugin and would like it listed here, please get in touch!

Routing

rabbitmq_lvc_exchange
The last value exchange acts like a direct exchange (binding keys are compared for equality with routing keys); but it also keeps track of the last value that was published with each routing key, and when a queue is bound, it automatically enqueues the last value for the binding key.
rabbitmq_rtopic_exchange
Adds a reverse topic exchange which lets you provide routing patterns at publishing time, instead of at binding time.
rabbitmq_recent_history_exchange
As of RabbitMQ 3.6.0 the recent history exchange plugin is provided with the broker's package.
rabbitmq_delayed_message_exchange
A plugin that adds delayed-messaging (or scheduled-messaging) to RabbitMQ.
rabbitmq_routing_node_stamp
A plugin that stamps a message with the node who first received it.
rabbitmq_message_timestamp
A plugin that adds a timestamp when a message first enters RabbitMQ.

Authentication / Authorisation

rabbitmq_auth_backend_http
As of RabbitMQ 3.7.0 the HTTP auth backend plugin is provided with the broker's package. Provides the ability for your RabbitMQ server to perform authentication (determining who can log in) and authorisation (determining what permissions they have) by making requests to an HTTP server.
rabbitmq_auth_backend_amqp
Provides the ability for your RabbitMQ server to perform authentication and authorisation over AMQP itself.
rabbitmq_auth_backend_ip_range
This plugin is not ported to RabbitMQ 3.7.x+ yet. Provides the ability for your RabbitMQ server to perform authorisation based on the client IP address.
rabbitmq_trust_store
As of RabbitMQ 3.6.3 the trust store plugin is provided with the broker's package. Provides support for TLS (x509) certificate whitelisting. All plugins which use the global TLS options will be configured with the same whitelist. This plugin is provided with the broker's package.

Management

rabbitmq_top
As of RabbitMQ 3.6.3 the management top plugin is provided with the broker's package. Adds a "top" like view of busy processes to the management plugin. This plugin is provided with the broker's package.
rabbitmq_management_exchange
Adds an exchange type which allows you to connect to the management API using AMQP rather than HTTP.
rabbitmq_event_exchange
As of RabbitMQ 3.6.0 the event exchange plugin is provided with the broker's package.
rabbitmq_management_themes
Adds the possibility to customize the management web UI look.
rabbitmq_boot_steps_visualiser
Adds a tab to the management UI which displays boot steps in a graph. This is a debugging tool: it is of no use in a production broker.

Clustering and Distributed RabbitMQ

autocluster
As of RabbitMQ 3.7.0, this plugin was superseded by a new peer discovery subsystem built on the same ideas and supporting the same backends via separate plugins.

Adds the possibility to automatically cluster RabbitMQ nodes using Consul, etcd or DNS for service discovery.

rabbitmq_clusterer
Provides an alternative way of cluster formation. This plugin is deprecated.

Logging

lager
As of RabbitMQ 3.7.0 the lager plugin is replaced by native Lager support. Basho's Lager logging framework as a RabbitMQ plugin.

Queues

rabbitmq_priority_queue
As of RabbitMQ 3.5.0 the priority queue plugin is integrated into the broker. Users of the plugin upgrading from previous versions of RabbitMQ should:
  • Install the new version of RabbitMQ
  • Invoke: rabbitmq-plugins disable rabbitmq_priority_queue
  • Start the server
rabbitmq_sharding
As of RabbitMQ 3.6.0 the sharding plugin is provided with the broker's package.

Protocols

rabbitmq_coap_pubsub
This plugin currently fails to build with RabbitMQ 3.7.0 so far. Implements the Publish-Subscribe Broker for the Constrained Application Protocol (CoAP) as specified in the draft-koster-core-coap-pubsub-02.
rabbitmq_email
Maps SMTP to AMQP 0-9-1 (to convert an incoming email to an AMQP 0-9-1 message) and AMQP 0-9-1 to SMTP (to send an email from an AMQP 0-9-1 message).
pgsql_listen_exchange
This plugin is not ported to RabbitMQ 3.6.x+ yet. Translates PostgreSQL NOTIFY messages to AMQP messages and publishes them to bound queues. The PostgreSQL NOTIFY message channel is used as the routing key for the message using direct exchange style routing mechanics.
rabbitmq_web_mqtt
As of RabbitMQ 3.6.2 the Web-MQTT plugin is provided with the broker's package. Provides support for MQTT-over-WebSockets.

Getting Help and Providing Feedback

If you have questions about the contents of this guide or any other topic related to RabbitMQ, don't hesitate to ask them on the RabbitMQ mailing list.

Help Us Improve the Docs <3

If you'd like to contribute an improvement to the site, its source is available on GitHub. Simply fork the repository and submit a pull request. Thank you!