RabbitMQ
The RabbitMQ source collects metrics and logs from a RabbitMQ broker. Metrics are scraped from the RabbitMQ Management plugin HTTP API using a monitoring user (consumer counts and message delivery, publish, acknowledge, drop, and current-message rates). Logs are read from the RabbitMQ log files on the collector host and optionally parsed into structured fields.
Supported Telemetry
macOS
✓
✓
Linux
✓
✓
Windows
✓
✓
Prerequisites
Metrics
A reachable RabbitMQ node with the RabbitMQ Management plugin enabled. The plugin exposes the HTTP API the receiver scrapes (default port
15672). Enable it withrabbitmq-plugins enable rabbitmq_management. See Management Plugin.A monitoring user. Create a dedicated RabbitMQ user and grant it the
monitoringtag so it can read broker statistics without administrative rights. See Authentication, Authorisation, Access Control.Network reachability from the collector to the Management API endpoint (host and port).
If the Management API is served over HTTPS, the TLS material to validate it (a CA certificate file, and a client certificate and key if mutual TLS is required).
Logs
RabbitMQ writing its log files on the host where the collector runs. The default path is
/var/log/rabbitmq/rabbit@*.log.Read access for the collector to those log file paths.
Configuration

Telemetry Type
Choose Telemetry Type
Telemetry Selector
No
["Logs", "Metrics"]
Which signals this source collects: Logs, Metrics, or both.
Logs
Log Paths
Strings
No
/var/log/rabbitmq/rabbit@*.log
Path to RabbitMQ log file(s). Glob patterns are supported. Relevant when Logs is selected.
Start At
Enum: beginning, end
No
end
Start reading logs from the beginning or end of the file. Relevant when Logs is selected.
Parse
Boolean
No
true
Parses the log fields into structured data. Relevant when Logs is selected.
Metrics
Endpoint
String
No
http://localhost:15672
The endpoint of the RabbitMQ Management API. Relevant when Metrics is selected.
Username
String
Yes
(empty)
Username used to authenticate to the Management API. Relevant when Metrics is selected.
Password
String
Yes
(empty)
Password used to authenticate to the Management API. Relevant when Metrics is selected.
Collection Interval
Integer
No
60
How often (seconds) to scrape for metrics. Relevant when Metrics is selected.
Advanced
Enable TLS
Boolean
No
false
Whether or not to use TLS when connecting to the Management API. Relevant when Metrics is selected.
Skip TLS Certificate Verification
Boolean
No
false
Skip verification of the server's TLS certificate. Relevant when Metrics is selected and Enable TLS is true.
TLS Certificate Authority File
String
No
(empty)
Certificate authority used to validate TLS certificates. Relevant when Metrics is selected and Enable TLS is true.
TLS Client Certificate File
String
No
(empty)
A TLS certificate used for client authentication, if mutual TLS is enabled. Relevant when Metrics is selected and Enable TLS is true.
TLS Client Private Key File
String
No
(empty)
A TLS private key used for client authentication, if mutual TLS is enabled. Relevant when Metrics is selected and Enable TLS is true.
Metrics
Metrics
No
[]
Toggle individual metrics on and off. Relevant when Metrics is selected.
Examples
Collect metrics and logs from a local RabbitMQ broker
This source scrapes the Management API at the default endpoint with a dedicated monitoring user every 30 seconds, and tails the default RabbitMQ log path.
Configuration Tips
The Endpoint is the RabbitMQ Management API (default port
15672), not the AMQP port5672. Use the URL where the Management plugin is served.Use a dedicated user with only the
monitoringtag rather than an administrator account, so the collector has the access it needs and nothing more.When the Management API is served over HTTPS, set Enable TLS and provide a CA file. Only enable Skip TLS Certificate Verification for testing, never in production.
Troubleshooting
Connection refused or no metrics
Symptoms: the receiver cannot reach the endpoint, or no RabbitMQ metrics appear.
Solutions:
Confirm the Management plugin is enabled (
rabbitmq-plugins listshowsrabbitmq_management).Verify the Endpoint host and port (default
15672) and that a firewall is not blocking the collector.
Authentication failed
Symptoms: the Management API returns 401 or 403 and no metrics are collected.
Solutions:
Verify the Username and Password are correct.
Confirm the user has the
monitoringtag so it can read broker statistics.
TLS handshake errors
Symptoms: the connection fails with a certificate or TLS error when Enable TLS is on.
Solutions:
Provide a CA file that signs the Management API server certificate.
For mutual TLS, supply both the client certificate and private key files.
No logs collected
Symptoms: logs are enabled but none arrive.
Solutions:
Confirm the Log Paths match the broker's actual log files (default
/var/log/rabbitmq/rabbit@*.log).Verify the collector user has read access to those files.
Standalone Source
Related Resources
Last updated
Was this helpful?