Monitor your Clusters, Nodes, Virtual Hosts and Queues.
Monitor your Clusters, Nodes, Virtual Hosts and Queues.
This python extension connects to your RabbitMQ cluster via the Nodes Management API, to collect metrics for:
These entities are then created in Dynatrace with relationships between them. The extension provides customized screens and metrics for each entity.

Create a monitoring configuration, the parameters are:
monitoring permission.Your RabbitMQ broker must have the management plugin enabled. This is enabled by default.
The extension has been tested on clusters running:
And the user must have rights to see the queues and nodes.
This extensions requires EEC 1.313+.
When activating your extension using monitoring configuration, you can limit monitoring to one of the feature sets. To work properly the extension has to collect at least one metric after the activation.
In highly segmented networks, feature sets can reflect the segments of your environment. Then, when you create a monitoring configuration, you can select a feature set and a corresponding ActiveGate group that can connect to this particular segment.
All metrics that aren't categorized into any feature set are considered to be the default and are always reported.
A metric inherits the feature set of a subgroup, which in turn inherits the feature set of a group. Also, the feature set defined on the metric level overrides the feature set defined on the subgroup level, which in turn overrides the feature set defined on the group level.
| Metric name | Metric key | Description |
|---|---|---|
| Messages (Cluster) | rabbitmq.cluster.messages | Total messages (ready + unacknowledged) in the cluster |
| Messages Ready (Cluster) | rabbitmq.cluster.messages_ready | Total messages ready in the cluster |
| Messages Unacknowledged (Cluster) | rabbitmq.cluster.messages_unacknowledged | Total messages unacknowledged in the cluster |
| Consumers (Cluster) | rabbitmq.cluster.consumers | Number of consumers |
| Connections (Cluster) | rabbitmq.cluster.connections | Number of connections |
| Queues | rabbitmq.cluster.queues | Number of queues |
| Exchanges | rabbitmq.cluster.exchanges | Number of exchanges |
| Channels | rabbitmq.cluster.channels | Number of channels |
| Messages Acknowledged (Cluster) | rabbitmq.cluster.ack.count | Total messages acknowledged in the cluster |
| Messages Unacknowledged (Cluster) | rabbitmq.cluster.unack.count | Total messages unacknowledged in the cluster |
| Messages Delivered (Cluster) | rabbitmq.cluster.deliver_get.count | Total messages delivered in the cluster |
| Messages Published (Cluster) | rabbitmq.cluster.publish.count | Total messages published in the cluster |
| Metric name | Metric key | Description |
|---|---|---|
| Messages (Virtual Host) | rabbitmq.vhost.messages | Sum of ready and unacknowledged messages for all queues in the Virtual Host. |
| Messages Ready (Virtual Host) | rabbitmq.vhost.messages_ready | Number of messages ready to be delivered to clients for all queues in the Virtual Host. |
| Messages Unacknowledged (Virtual Host) | rabbitmq.vhost.messages_unacknowledged | Number of messages delivered to clients but not yet acknowledged for all queues in the Virtual Host. |
| Bytes Received (Virtual Host) | rabbitmq.vhost.recv_oct.count | Total number of bytes received on the network for all queues in the Virtual Host. |
| Bytes Sent (Virtual Host) | rabbitmq.vhost.send_oct.count | Total number of bytes sent on the network for all queues in the Virtual Host. |
| Metric name | Metric key | Description |
|---|---|---|
| Messages | rabbitmq.queue.messages | Sum of ready and unacknowledged messages (queue depth). |
| Messages Ready | rabbitmq.queue.messages_ready | Number of messages ready to be delivered to clients. |
| Messages Unacknowledged | rabbitmq.queue.messages_unacknowledged | Number of messages delivered to clients but not yet acknowledged. |
| Message Bytes | rabbitmq.queue.message_bytes | Sum of the size of all message bodies in the queue. This does not include the message properties (including headers) or any overhead. |
| Memory | rabbitmq.queue.memory | Bytes of memory allocated by the runtime for the queue, including stack, heap and internal structures. |
| Consumers | rabbitmq.queue.consumers | Number of consumers. |
| Publish | rabbitmq.queue.publish.count | Count of messages published. |
| Redeliver | rabbitmq.queue.redeliver.count | Count of subset of messages in deliver_get which had the redelivered flag set. |
| Messages Delivered | rabbitmq.queue.messages_delivered.count | Messages delivered to consumers. |
| Messages Delivered No Ack | rabbitmq.queue.messages_deliver_no_ack.count | Count of messages delivered in no-acknowledgement mode to consumers. |
| Messages Dropped Unroutable | rabbitmq.queue.drop_unroutable.count | Count of messages dropped as unroutable. |
| Messages Returned Unroutable | rabbitmq.queue.return_unroutable.count | Count of messages returned to the publisher as unroutable. |
| Metric name | Metric key | Description |
|---|---|---|
| Memory Used | rabbitmq.node.mem_used | Memory used in bytes. |
| Memory Limit | rabbitmq.node.mem_limit | Point at which the memory alarm will go off. |
| File Descriptors Used | rabbitmq.node.fd_used | Used file descriptors. |
| File descriptors available | rabbitmq.node.fd_total | File descriptors available |
| Sockets Used | rabbitmq.node.sockets_used | File descriptors used as sockets. |
| Sockets Available | rabbitmq.node.sockets_total | File descriptors available to be used as sockets. |
| Disk Free | rabbitmq.node.disk_free | Disk free space in bytes. |
| Partitions | rabbitmq.node.partitions | Number of network partitions this node is seeing. |
| Uptime | rabbitmq.node.uptime | Time since the Erlang VM started, in milliseconds. |
| Garbage Collection Count | rabbitmq.node.gc_num.count | Number of garbage collections. |
Message Queues