- Time Series
- 16. Sep
rabbitmq_exporter is a Prometheus exporter for rabbitmq metrics. This chart bootstraps a rabbitmq_exporter deployment on a Kubernetes cluster using the Helm package manager.
This document is intended to guide you on which RabbitMQ and system metrics are most important to monitor. Monitoring your RabbitMQ installation is an effective means to intercept issues before they affect the rest of your environment and, eventually, your users.
Infrastructure and Kernel Metrics
First step towards a useful monitoring system starts with infrastructure and kernel metrics. There are quite a few of them but some are more important than others. The following metrics should be monitored on all nodes in a RabbitMQ cluster and, if possible, all nodes that host applications:
- CPU (idle, user, system, iowait)
- Memory (free, cached, buffered)
- Disk I/O (reads & writes per unit time, I/O wait percentages)
- Free Disk Space
- File descriptors used by beam.smp vs. max system limit
- Network throughput (bytes received, bytes sent) vs. maximum network link throughput
- VM statistics (dirty page flushes, writeback volume)
- System load average (/proc/loadavg)
There is no shortage of existing tools (such as Graphite or Datadog) that collect infrastructure and kernel metrics, store and visualize them over periods of time.
The RabbitMQ management plugin provides a starting point for monitoring RabbitMQ metrics. One limitation, however, is that only up to one day's worth of metrics are stored. Storing historical metrics can be an important tool to determine the root cause of issues affecting your users or to plan for future capacity.
RabbitMQ metrics are made available through the HTTP API via the api/queues/vhost/qname endpoint. It is recommended to collect metrics at 60-second intervals because more frequent collection may place too much load on the RabbitMQ server and negatively affect performance.
Supports multiple messaging protocols, message queuing, delivery acknowledgment, flexible routing to queues, multiple exchange type.
Deploy as clusters for high availability and throughput; federate across multiple availability zones and regions.
Enterprise & Cloud Ready
Pluggable authentication, authorization, supports TLS and LDAP. Lightweight and easy to deploy in public and private clouds.
Tools & Plugins
A diverse array of tools and plugins supporting continuous integration, operational metrics, and integration to other enterprise systems. Flexible plug-in approach for extending RabbitMQ functionality.
Management & Monitoring
HTTP-API, command line tool, and UI for managing and monitoring RabbitMQ.
RabbitMQ Commercial Services
Pivotal Software produces a commercial distribution called Pivotal RabbitMQ, as well as a version that deploys in Pivotal Cloud Foundry. These distributions include all of the features of the open source version, with RabbitMQ for Pivotal Cloud Foundry providing some additional management features. Support agreements are part of the commercial licensing.
Support + Hosting
Pivotal Software provides support for open source RabbitMQ. The following companies provide technical support and/or cloud hosting of open source RabbitMQ: CloudAMQP, Erlang Solutions, Google Cloud Platform. RabbitMQ can also be deployed in AWS and Microsoft Azure.
The following companies provide free, virtual, or instructor-led courses for RabbitMQ: Pivotal Software, Erlang Solutions, NetCom Learning, Skills Matter, LearnQuest and Open Source Architect.