Available CloudWatch metrics for Amazon MQ for RabbitMQ brokers
Warning
Starting with RabbitMQ 4.2, RabbitMQIOReadAverageTime and RabbitMQIOWriteAverageTime are deprecated and will not publish meaningful values. These metrics will be removed from CloudWatch in the next major RabbitMQ release.
RabbitMQ broker metrics
Note
The management plugin is not recommended for production or long-term monitoring by open source RabbitMQ
| Metric | Unit | Description |
|---|---|---|
ExchangeCount |
Count | The total number of exchanges configured on the broker. |
QueueCount |
Count | The total number of queues configured on the broker. |
ConnectionCount |
Count | The total number of connections established on the broker. |
ChannelCount |
Count | The total number of channels established on the broker.
ImportantThe concept of channels is specific to AMQP 0-9-1. |
ConsumerCount |
Count | The total number of consumers connected to the broker. |
MessageCount |
Count | The total number of messages in the queues.
NoteThe number produced is the total sum of ready and unacknowledged messages on the broker. |
MessageReadyCount |
Count | The total number of ready messages in the queues. |
MessageUnacknowledgedCount |
Count | The total number of unacknowledged messages in the queues. |
PublishRate |
Count | The rate at which messages are published to the broker.
The number produced represents the number of messages per second at the time of sampling. ImportantThis metric reflects only AMQP 0-9-1 protocol activity. For AMQP 1.0 metrics, see Accessing Prometheus metrics. |
ConfirmRate |
Count | The rate at which the RabbitMQ server is confirming published messages. You can compare this metric with PublishRate to better understand
how your broker is performing.
The number produced represents the number of messages per second at the time of sampling. ImportantThis metric reflects only AMQP 0-9-1 protocol activity. For AMQP 1.0 metrics, see Accessing Prometheus metrics. |
AckRate |
Count | The rate at which messages are being acknowledged by consumers.
The number produced represents the number of messages per second at the time of sampling. ImportantThis metric reflects only AMQP 0-9-1 protocol activity. For AMQP 1.0 metrics, see Accessing Prometheus metrics. |
SystemCpuUtilization |
Percent | The percentage of allocated Amazon EC2 compute units that the broker currently uses. For cluster deployments, this value represents the aggregate of all three RabbitMQ nodes' corresponding metric values. |
RabbitMQMemLimit |
Bytes | The RAM limit for a RabbitMQ broker. This metric varies depending on instance type. For more information, see Memory and disk alarms. For cluster deployments, this value represents the aggregate of all three RabbitMQ nodes' corresponding metric values. |
RabbitMQMemUsed |
Bytes | The volume of RAM used by a RabbitMQ broker. For cluster deployments, this value represents the aggregate of all three RabbitMQ nodes' corresponding metric values. |
RabbitMQDiskFreeLimit |
Bytes | The disk limit for a RabbitMQ broker. For cluster deployments, this value represents the aggregate of all three RabbitMQ nodes' corresponding metric values. This metric varies depending on instance type and deployment mode. For more information, see Memory and disk alarms. |
RabbitMQDiskFree |
Bytes | The total volume of free disk space available in a RabbitMQ broker. When disk usage goes above its limit, the cluster will block all producer connections. For cluster deployments, this value represents the aggregate of all three RabbitMQ nodes' corresponding metric values. |
RabbitMQFdUsed |
Count | Number of file descriptors used. For cluster deployments, this value represents the aggregate of all three RabbitMQ nodes' corresponding metric values. |
RabbitMQIOReadAverageTime |
Count | The average time (in milliseconds) for RabbitMQ to perform one read operation. The value is proportional to the message size. |
RabbitMQIOWriteAverageTime |
Count | The average time (in milliseconds) for RabbitMQ to perform one write operation. The value is proportional to the message size. |
Dimensions for RabbitMQ broker metrics
| Dimension | Description |
|---|---|
Broker |
The name of the broker. |
RabbitMQ node metrics
| Metric | Unit | Description |
|---|---|---|
SystemCpuUtilization |
Percent | The percentage of allocated Amazon EC2 compute units that the broker currently uses. |
RabbitMQMemLimit |
Bytes | The RAM limit for a RabbitMQ node. This metric varies depending on instance type. For more information, see Memory and disk alarms. |
RabbitMQMemUsed |
Bytes | The volume of RAM used by a RabbitMQ node. When memory use goes above the limit, the cluster will block all producer connections. |
RabbitMQDiskFreeLimit |
Bytes | The disk limit for a RabbitMQ node. This metric varies depending on instance type and deployment mode. For more information, see Memory and disk alarms. |
RabbitMQDiskFree |
Bytes | The total volume of free disk space available in a RabbitMQ node. When disk usage goes above its limit, the cluster will block all producer connections. |
RabbitMQFdUsed |
Count | Number of file descriptors used. |
ExchangeCount |
Count | The total number of exchanges configured on the node. Available for RabbitMQ 4.2 and above. |
QueueCount |
Count | The total number of queues configured on the node. Available for RabbitMQ 4.2 and above. |
ConnectionCount |
Count | The total number of connections established on the node. Available for RabbitMQ 4.2 and above. |
ChannelCount |
Count | The total number of channels established on the node. Available for RabbitMQ 4.2 and above. |
ConsumerCount |
Count | The total number of consumers connected to the node. Available for RabbitMQ 4.2 and above. |
MessageCount |
Count | The total number of messages in queues on the node. Available for RabbitMQ 4.2 and above. |
MessageReadyCount |
Count | The total number of ready messages in queues on the node. Available for RabbitMQ 4.2 and above. |
MessageUnacknowledgedCount |
Count | The total number of unacknowledged messages in queues on the node. Available for RabbitMQ 4.2 and above. |
Aggregating cluster-wide metrics from RabbitMQ node metrics
To get aggregated cluster-wide metrics, you can find the corresponding per-node metrics on the CloudWatch console by filtering on broker name and metric name. Then, select those metrics by clicking on the checkboxes, and choose Add math > Common > Sum.
Dimensions for RabbitMQ node metrics
| Dimension | Description |
|---|---|
Node |
The name of the node.
NoteA node name consists of two parts: a prefix (usuallly |
Broker |
The name of the broker. |
RabbitMQ queue metrics
| Metric | Unit | Description |
|---|---|---|
ConsumerCount |
Count | The number of consumers subscribed to the queue. |
MessageReadyCount |
Count | The number of messages that are currently available to be delivered. |
MessageUnacknowledgedCount |
Count | The number of messages for which the server is awaiting acknowledgement. |
MessageCount |
Count | The total number of MessageReadyCount and MessageUnacknowledgedCount (also known as
queue depth). |
Dimensions for RabbitMQ queue metrics
Note
Amazon MQ for RabbitMQ will not publish metrics for virtual hosts and queues with names containing blank spaces, tabs or other non-ASCII characters.
For more information about dimension names, see Dimension in the Amazon CloudWatch API Reference.
| Dimension | Description |
|---|---|
Queue |
The name of the queue. |
VirtualHost |
The name of the virtual host. |
Broker |
The name of the broker. |
RabbitMQ network metrics
| Metric | Unit | Description |
|---|---|---|
NetworkOut |
Bytes |
The number of bytes sent out by the instance on all network interfaces.
This metric identifies the volume of outgoing network traffic from a single instance.
The number reported is the number of bytes sent during the period.
If you are using basic (5-minute) monitoring and the statistic is Sum,
you can divide this number by 300 to find Bytes/second.
If you have detailed (1-minute) monitoring and the statistic is Sum,
divide it by 60.
You can also use the CloudWatch metric math function Meaningful Statistics: Sum, Average, Minimum, Maximum |
NetworkIn |
Bytes |
The number of bytes received by the instance on all network interfaces.
This metric identifies the volume of incoming network traffic to a single instance.
The number reported is the number of bytes received during the period.
If you are using basic (5-minute) monitoring and the statistic is Sum,
you can divide this number by 300 to find Bytes/second.
If you have detailed (1-minute) monitoring and the statistic is Sum,
divide it by 60.
You can also use the CloudWatch metric math function Meaningful Statistics: Sum, Average, Minimum, Maximum |
Dimensions for RabbitMQ brokers
| Dimension | Description |
|---|---|
Broker |
The name of the broker. |
Configuring Amazon MQ for RabbitMQ logs
When you enable CloudWatch logging for your RabbitMQ brokers, Amazon MQ uses a service-linked role to publish general logs to CloudWatch. If no Amazon MQ service-linked role exists when you first create a broker, Amazon MQ will automatically create one. All subsequent RabbitMQ brokers will use the same service-linked role to publish logs to CloudWatch.
For more information about service-linked roles, see Using service-linked roles in the AWS Identity and Access Management User Guide. For more information about how Amazon MQ uses service-linked roles, see Using service-linked roles for Amazon MQ.