Monitoring Metrics for RabbitMQ 3.x.x
Introduction
This section describes metrics reported by DMS for RabbitMQ to Cloud Eye as well as their namespaces and dimensions. You can use the Cloud Eye console or APIs to query the metrics and alarms of RabbitMQ instances. You can also view the metrics on the Monitoring Details page on the DMS (for RabbitMQ) console.
Cloud Eye supports a maximum of four hierarchical dimensions that are numbered from 0 to 3. For example, if the dimension information of a monitoring metric is "rabbitmq_instance_id,rabbitmq_node", the dimension of "rabbitmq_instance_id" is numbered 0 and that of "rabbitmq_node" is numbered 1.
Namespace
SYS.DMS
Instance Metrics
|
Metric ID |
Metric Name |
Description |
Value Range |
Unit |
Conversion Rule |
Dimension |
Monitoring Period (Raw Data) |
|---|---|---|---|---|---|---|---|
|
connections |
Connections |
Number of connections in the RabbitMQ instance |
≥ 0 |
Count |
N/A |
rabbitmq_instance_id |
1 minute |
|
channels |
Channels |
Number of channels in the RabbitMQ instance |
0–2047 |
Count |
N/A |
rabbitmq_instance_id |
1 minute |
|
queues |
Queues |
Number of queues in the RabbitMQ instance |
0–7,000 |
Count |
N/A |
rabbitmq_instance_id |
1 minute |
|
consumers |
Consumers |
Number of consumers in the RabbitMQ instance |
0–280,000 |
Count |
N/A |
rabbitmq_instance_id |
1 minute |
|
messages_ready |
Available Messages |
Number of messages that can be consumed in the RabbitMQ instance |
0–10,000,000 |
Count |
N/A |
rabbitmq_instance_id |
1 minute |
|
messages_unacknowledged |
Unacknowledged Messages |
Total number of messages that have been consumed but not acknowledged in a RabbitMQ instance |
0–10,000,000 |
Count |
N/A |
rabbitmq_instance_id |
1 minute |
|
publish |
Production Rate |
Rate at which messages are produced in the RabbitMQ instance |
0–25,000 |
Count/s |
N/A |
rabbitmq_instance_id |
1 minute |
|
deliver |
Retrieval Rate (Manual Ack) |
Rate at which messages are consumed (in the manual acknowledgment scenario) in a RabbitMQ instance |
0–25,000 |
Count/s |
N/A |
rabbitmq_instance_id |
1 minute |
|
deliver_no_ack |
Retrieval Rate (Auto Ack) |
Rate at which messages are consumed (in the automatic acknowledgment scenario) in a RabbitMQ instance |
0–50,000 |
Count/s |
N/A |
rabbitmq_instance_id |
1 minute |
|
connections_states_full |
CONNECTIONS States Full |
Number of connections that reach the upper limit of channels in the instance |
0–1,000,000 |
Count |
N/A |
rabbitmq_instance_id |
1 minute |
Broker Metrics
|
Metric ID |
Metric Name |
Description |
Value Range |
Unit |
Conversion Rule |
Dimension |
Monitoring Period (Raw Data) |
|---|---|---|---|---|---|---|---|
|
fd_used |
File Handles |
Number of file handles used by RabbitMQ in the node |
0–65,535 |
Count |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
socket_used |
Socket Connections |
Number of socket connections used by RabbitMQ in the node |
0–50,000 |
Count |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
proc_used |
Erlang Processes |
Number of Erlang processes used by RabbitMQ in the node |
0–1,048,576 |
Count |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
mem_used |
Memory Usage |
Memory usage of RabbitMQ in the node |
0–32,000,000,000 |
Byte |
1024(IEC) |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
disk_free |
Available Memory |
Available memory of RabbitMQ in the node |
0–500,000,000,000 |
Byte |
1024(IEC) |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_alive |
Node Alive |
Whether the RabbitMQ node is alive |
1: alive 0: not alive |
N/A |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_disk_usage |
Disk Capacity Usage |
Disk usage of the RabbitMQ VM |
0~100 |
% |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_cpu_usage |
CPU Usage |
CPU usage of the RabbitMQ VM |
0~100 |
% |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_cpu_core_load |
Average Load per CPU Core |
Average load of each CPU core of the RabbitMQ VM |
> 0 |
N/A |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_memory_usage |
Memory Usage |
Memory usage of the RabbitMQ VM
|
0~100 |
% |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_disk_read_await |
Average Disk Read Time |
Average time for each disk I/O read in the monitoring period |
> 0 |
ms |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_disk_write_await |
Average Disk Write Time |
Average time for each disk I/O write in the monitoring period |
> 0 |
ms |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_node_bytes_in_rate |
Inbound Traffic |
Inbound traffic per second |
> 0 |
Byte/s |
1024(IEC) |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_node_bytes_out_rate |
Outbound Traffic |
Outbound traffic per second |
> 0 |
Byte/s |
1024(IEC) |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_node_queues |
Queues |
Number of queues in the node |
> 0 |
Count |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_memory_high_watermark |
Memory High Watermark |
Whether the node has reached the memory high watermark, blocking all producers in the cluster |
1: yes 0: no |
N/A |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
rabbitmq_disk_insufficient |
Disk High Watermark |
Whether the node has reached the disk high watermark, blocking all producers in the cluster |
1: yes 0: no |
N/A |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
|
connections_usage |
Connection Usage |
Percentage of current connections to the maximum number of connections |
≥ 0 |
% |
N/A |
rabbitmq_instance_id,rabbitmq_node |
1 minute |
Queue Metrics
|
Metric ID |
Metric Name |
Description |
Value Range |
Unit |
Conversion Rule |
Dimension |
Monitoring Period (Raw Data) |
|---|---|---|---|---|---|---|---|
|
queue_messages_unacknowledged |
Unacknowledged Messages |
Number of messages that have been consumed but not acknowledged in the RabbitMQ queue |
0–10,000,000 |
Count |
N/A |
rabbitmq_instance_id,rabbitmq_queue |
1 minute |
|
queue_messages_ready |
Available Messages |
Number of messages that can be retrieved in a RabbitMQ queue |
0–10,000,000 |
Count |
N/A |
rabbitmq_instance_id,rabbitmq_queue |
1 minute |
If a monitored object has multiple dimensions, the dimensional level of specific metrics is required when you use APIs to query the metrics.
For example, to query the disk capacity usage (rabbitmq_disk_usage) of a RabbitMQ node, its dimension is "rabbitmq_instance_id,rabbitmq_node", indicating that rabbitmq_instance_id is numbered 0 and rabbitmq_node is numbered 1.
- To query a single metric by calling the API, the rabbitmq_node dimension is used as follows:
dim.0=rabbitmq_instance_id,0186688d-fxxx-497bfdda6c8e&dim.1=rabbitmq_node,dms-vm-0186688d-rabbitmq-0
0186688d-fxxx-497bfdda6c8e and dms-vm-0186688d-rabbitmq-0 are the dimension values of rabbitmq_instance_id and rabbitmq_node. For details about how to obtain them, see the guide in the Dimension table.
- To batch query metrics by calling the API, the rabbitmq_node dimension is used as follows:
"dimensions": [ { "name": "rabbitmq_instance_id", "value": "0186688d-fxxx-497bfdda6c8e" }, { "name": "rabbitmq_node", "value": "dms-vm-0186688d-rabbitmq-0" } ]0186688d-fxxx-497bfdda6c8e and dms-vm-0186688d-rabbitmq-0 are the dimension values of rabbitmq_instance_id and rabbitmq_node. For details about how to obtain them, see the guide in the Dimension table.
Dimensions
|
Key |
Value |
|---|---|
|
rabbitmq_instance_id |
RabbitMQ instance ID, for example, 0186688d-fxxx-497bfdda6c8e. To obtain the value, call the Listing All Instances API and extract the value from the response parameters. |
|
rabbitmq_node |
RabbitMQ instance node, for example, dms-vm-0186688d-rabbitmq-0. To obtain the value, call the Querying Instance Monitoring Dimensions API and extract the value from the response parameters. |
|
rabbitmq_queue |
RabbitMQ instance queue name, for example, Queue-01. To obtain the value, call the Querying Instance Monitoring Dimensions API and extract the value from the response parameters. |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.