RabbitMQ monitoring with Netdata

What is RabbitMQ?

RabbitMQ is an open source message broker that enables applications to communicate and exchange data in a distributed and asynchronous manner. It is a high performance and reliable message broker that is used to facilitate reliable messaging between applications, services, and systems.

Monitoring RabbitMQ with Netdata

The prerequisites for monitoring RabbitMQ with Netdata are to have RabbitMQ and Netdata installed on your system.

Netdata auto discovers hundreds of services, and for those it doesn’t turning on manual discovery is a one line configuration. For more information on configuring Netdata for RabbitMQ monitoring please read the collector documentation.

You should now see the RabbitMQ section on the Overview tab in Netdata Cloud already populated with charts about all the metrics you care about.

Netdata has a public demo space (no login required) where you can explore different monitoring use-cases and get a feel for Netdata.

What RabbitMQ metrics are important to monitor - and why?

Messages Count

The number of messages that are ready, or unacknowledged, in a RabbitMQ instance. This metric can help you detect if your queue is becoming backlogged with messages that have not been processed yet. If the number of unacknowledged messages is too high, it can lead to poor performance and even message loss in some cases.

Messages Rate

The rate at which messages are being acked, published, published in, published out, confirmed, delivered, delivered with no ack, get, get with no ack, deliver get, redeliver, and returned unroutable. This metric can help you detect if any of your queues are becoming overloaded with messages. It can also help you identify if any of your queues are not being processed in a timely manner.

Objects Count

The number of channels, consumers, connections, queues, and exchanges in a RabbitMQ instance. This metric can help you detect if the number of objects is increasing to an unsustainable level. It can also indicate if there are too many queues, channels, or consumers that are no longer being used, which can lead to unnecessary resource usage.

Connection Churn Rate

The rate at which connections are created and closed in a RabbitMQ instance. This metric can help you detect if connections are being created and closed too frequently, which can lead to instability in your RabbitMQ instance.

Channel Churn Rate

The rate at which channels are created and closed in a RabbitMQ instance. This metric can help you detect if channels are being created and closed too frequently, which can lead to instability in your RabbitMQ instance.

Queue Churn Rate

The rate at which queues are created, deleted, and declared in a RabbitMQ instance. This metric can help you detect if queues are being created, deleted, and declared too frequently, which can lead to instability in your RabbitMQ instance.

File Descriptors Count

The number of available and used file descriptors in a RabbitMQ instance. This metric can help you detect if the number of file descriptors is reaching its limit, which can lead to performance degradation or even system failure.

Sockets Count

The number of available and used sockets in a RabbitMQ instance. This metric can help you detect if the number of sockets is reaching its limit, which can lead to performance degradation or even system failure.

Erlang Processes Count

The number of available and used Erlang processes in a RabbitMQ instance. This metric can help you detect if the number of Erlang processes is reaching its limit, which can lead to performance degradation or even system failure.

Erlang Run Queue Processes Count

The length of the Erlang run queue in a RabbitMQ instance. This metric can help you detect if the Erlang run queue is growing too large, which can lead to performance degradation or even system failure.

Memory Usage

The amount of memory used by a RabbitMQ instance. This metric can help you detect if the memory usage is growing too large, which can lead to performance degradation or even system failure.

Disk Space Free Size

The amount of free disk space in a RabbitMQ instance. This metric can help you detect if the free disk space is running low, which can lead to performance degradation or even system failure.

Vhost Messages Count

The number of messages that are ready, or unacknowledged, in a specific virtual host (vhost) in a RabbitMQ instance. This metric can help you detect if your vhost is becoming backlogged with messages that have not been processed yet. If the number of unacknowledged messages is too high, it can lead to poor performance and even message loss in some cases.

Vhost Messages Rate

The rate at which messages are being acked, published, published in, published out, confirmed, delivered, delivered with no ack, get, get with no ack, deliver get, redeliver, and returned unroutable in a specific virtual host (vhost) in a RabbitMQ instance. This metric can help you detect if any of your vhosts are becoming overloaded with messages. It can also help you identify if any of your vhosts are not being processed in a timely manner.

Queue Messages Count

The number of messages that are ready, unacknowledged, paged out, or persistent in a specific queue in a RabbitMQ instance. This metric can help you detect if your queue is becoming backlogged with messages that have not been processed yet. If the number of unacknowledged messages is too high, it can lead to poor performance and even message loss in some cases.

Queue Messages Rate

The rate at which messages are being acked, published, published in, published out, confirmed, delivered, delivered with no ack, get, get with no ack, deliver get, redeliver, and returned unroutable in a specific queue in a RabbitMQ instance. This metric can help you detect if any of your queues

Get Netdata

Sign up for free

Want to see a demonstration of Netdata for multiple use cases?

Go to Live Demo