////
This file is generated! See scripts/docs_collector.py
////

[[metricbeat-module-rabbitmq]]
== RabbitMQ module

The RabbitMQ module uses http://www.rabbitmq.com/management.html[HTTP API] created by the management plugin to collect metrics.

The default metricsets are `connection`, `node`, `queue` and `exchange`.

If `management.path_prefix` is set in RabbitMQ configuration, `management_path_prefix` has to be set to the same value in this module configuration.

[float]
=== Compatibility

The rabbitmq module is tested with RabbitMQ 3.7.4, and it should be compatible
with any version supporting the management plugin. This plugin needs to be
enabled.


[float]
=== Example configuration

The RabbitMQ module supports the standard configuration options that are described
in <<configuration-metricbeat>>. Here is an example configuration:

[source,yaml]
----
metricbeat.modules:
- module: rabbitmq
  metricsets: ["node", "queue", "connection"]
  enabled: true
  period: 10s
  hosts: ["localhost:15672"]

  # Management path prefix, if `management.path_prefix` is set in RabbitMQ
  # configuration, it has to be set to the same value.
  #management_path_prefix: ""

  #username: guest
  #password: guest
----

This module supports TLS connections when using `ssl` config field, as described in <<configuration-ssl>>.
It also supports the options described in <<module-http-config-options>>.

[float]
=== Metricsets

The following metricsets are available:

* <<metricbeat-metricset-rabbitmq-connection,connection>>

* <<metricbeat-metricset-rabbitmq-exchange,exchange>>

* <<metricbeat-metricset-rabbitmq-node,node>>

* <<metricbeat-metricset-rabbitmq-queue,queue>>

include::rabbitmq/connection.asciidoc[]

include::rabbitmq/exchange.asciidoc[]

include::rabbitmq/node.asciidoc[]

include::rabbitmq/queue.asciidoc[]

