Collector Type: Agent

Category: Application Monitors

Application Name: RabbitMQ

Global Template Name: Linux - RabbitMQ Monitors

Introduction

The rabbitmq-management plugin provides an HTTP-based API for management and monitoring of your RabbitMQ server. RabbitMQ is an open-source message-broker software that originally implemented the Advanced Message Queuing protocol and has since been extended with a plug-in architecture to support Streaming Text Oriented Messaging Protocol, MQ Telemetry Transport, and other protocols.

Pre-requisite:

Need to enable HTTP-based API using this command to monitor RabbitMQ server

    rabbitmq-plugins enable rabbitmq_management

Reference: https://www.rabbitmq.com/management.html

Parameters

NameDefault ValueDescription
ProtocolhttpThe protocol to be used.
Host IP Address127.0.0.1The host on which RabbitMQ is running.
Port15672 (Use port 55672 if you are using RabbitMQ older than 3.x)The port on which RabbitMQ is running.
User NameguestThe username of the server, if authentication is enabled.
PasswordguestThe password of the server, if authentication is enabled.
QueuesNA (If default NA is given, a MAX of 8 Queues will be monitored)Coma(,) separated list of queue names to be monitored.

Note: All field attributes are mandatory, use default values wherever applicable.

Collected Metrics

Metric NameDisplay NameDescription
rabbitmq.queue.consumersRabbitMQ ConsumersNumber of consumers.
rabbitmq.queue.consumers.activeRabbitMQ Active ConsumersNumber of active consumers. An active consumer is one which could immediately receive any messages sent to the queue.
rabbitmq.queue.memoryRabbitMQ MemoryMemory consumed by the Erlang process associated with the queue, including stack, heap and internal structures.
rabbitmq.queue.messagesRabbitMQ MessagesSum of ready and unacknowledged messages (queue depth).
rabbitmq.queue.messages.readyRabbitMQ Messages ReadyNumber of messages ready to be delivered to clients.
rabbitmq.queue.messages.unacknowledgedRabbitMQ Messages UnacknowledgedNumber of messages delivered to clients but not yet acknowledged.
rabbitmq.node.disk.freeRabbitMQ Free DiskThe free disk of the rabbitmq node in MB.
rabbitmq.node.fd.usedRabbitMQ OpenFDsNumber of open file descriptors used.
rabbitmq.node.mem.usedRabbitMQ Node Memory UtilizationThe memory used by the rabbitmq node in MB.
rabbitmq.node.proc.usedRabbitMQ Erlang Processes UsedNumber of erlang processes used.
rabbitmq.node.sockets.usedRabbitMQ Sockets UsedNumber of sockets used.
rabbitmq.node.uptimeRabbitMQ UptimeUptime of the RabbitMQ server.
rabbitmq.objects.overviewRabbitMQ Overview ObjectsOverview of all objects.