Huawei Cloud DMS RabbitMQ
Collect Huawei Cloud DMS RabbitMQ Metrics data
Configuration¶
Install Func¶
It is recommended to activate Guance Integration - Extensions - DataFlux Func (Automata): All prerequisites are automatically installed, please proceed with script installation
For self-deployed Func, refer to Self-deployed Func
Install Script¶
Note: Please prepare the Huawei Cloud AK that meets the requirements in advance (for simplicity, you can directly grant the global read-only permission
Tenant Guest)
Managed Version Activation Script¶
- Log in to the Guance console
- Click the 【Integration】 menu, select 【Cloud Account Management】
- Click 【Add Cloud Account】, select 【Huawei Cloud】, fill in the required information on the interface, if the cloud account information has been configured before, ignore this step
- Click 【Test】, after the test is successful, click 【Save】, if the test fails, please check whether the relevant configuration information is correct and test again
- Click 【Cloud Account Management】 list, you can see the added cloud account, click the corresponding cloud account, enter the details page
- Click the 【Integration】 button on the cloud account details page, find
Huawei Cloud DMS RabbitMQunder theNot Installedlist, click the 【Install】 button, and the installation interface will pop up for installation.
Manual Activation Script¶
-
Log in to the Func console, click 【Script Market】, enter the Guance script market, search for
integration_huaweicloud_rabbitmq -
Click 【Install】, then enter the corresponding parameters: Huawei Cloud AK, SK, and account name
-
Click 【Deploy Startup Script】, the system will automatically create the
Startupscript set, and automatically configure the corresponding startup script -
After enabling, you can see the corresponding automatic trigger configuration in 「Management / Automatic Trigger Configuration」. Click 【Execute】, you can immediately execute it once without waiting for the scheduled time. Wait a moment, you can view the execution task record and corresponding logs
Verification¶
- In 「Management / Automatic Trigger Configuration」, confirm whether the corresponding task has the corresponding automatic trigger configuration, and you can also view the corresponding task record and log to check for any exceptions
- In Guance, 「Infrastructure - Resource Catalog」, check whether there is asset information
- In Guance, 「Metrics」, check whether there is corresponding monitoring data
Metrics¶
Configure Huawei Cloud DMS RabbitMQ Metrics, you can collect more metrics through configuration Huawei Cloud DMS RabbitMQ Metrics Details
| Metric ID | Metric Name | Metric Meaning | Value Range | Measurement Object | Monitoring Cycle (Original Metric) |
|---|---|---|---|---|---|
connections |
Connections | This metric is used to count the total number of connections in the RabbitMQ instance. Unit: Count | >= 0 | RabbitMQ instance | 1 minute |
channels |
Channels | This metric is used to count the total number of channels in the RabbitMQ instance. Unit: Count | 0~2047 | RabbitMQ instance | 1 minute |
queues |
Queues | This metric is used to count the total number of queues in the RabbitMQ instance. Unit: Count | 0~1200 | RabbitMQ instance | 1 minute |
consumers |
Consumers | This metric is used to count the total number of consumers in the RabbitMQ instance. Unit: Count | 0~1200 | RabbitMQ instance | 1 minute |
messages_ready |
Ready Messages | This metric is used to count the total number of ready messages in the RabbitMQ instance. Unit: Count | 0~10000000 | RabbitMQ instance | 1 minute |
messages_unacknowledged |
Unacknowledged Messages | This metric is used to count the total number of messages that have been consumed but not acknowledged in the RabbitMQ instance. Unit: Count | 0~10000000 | RabbitMQ instance | 1 minute |
publish |
Publish Rate | Statistics the real-time message publish rate in the RabbitMQ instance. Unit: Count/s | 0~25000 | RabbitMQ instance | 1 minute |
deliver |
Deliver Rate (Manual Acknowledge) | Statistics the real-time message deliver rate (manual acknowledge) in the RabbitMQ instance. Unit: Count/s | 0~25000 | RabbitMQ instance | 1 minute |
deliver_no_ack |
Deliver Rate (Auto Acknowledge) | Statistics the real-time message deliver rate (auto acknowledge) in the RabbitMQ instance. Unit: Count/s | 0~50000 | RabbitMQ instance | 1 minute |
connections_states_running |
Running Connections | This metric is used to count the total number of connections in the entire instance, whose state is starting/tuning/opening/running. Unit: CountNote: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
connections_states_flow |
Flow Connections | This metric is used to count the total number of connections in the entire instance, whose state is flow. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
connections_states_block |
Block Connections | This metric is used to count the total number of connections in the entire instance, whose state is blocking/blocked. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
connections_states_close |
Close Connections | This metric is used to count the total number of connections in the entire instance, whose state is closing/closed. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
channels_states_running |
Running Channels | This metric is used to count the total number of channels in the entire instance, whose state is starting/tuning/opening/running. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
channels_states_flow |
Flow Channels | This metric is used to count the total number of channels in the entire instance, whose state is flow. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
channels_states_block |
Block Channels | This metric is used to count the total number of channels in the entire instance, whose state is blocking/blocked. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
channels_states_close |
Close Channels | This metric is used to count the total number of channels in the entire instance, whose state is closing/closed. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
queues_states_running |
Running Queues | This metric is used to count the total number of queues in the entire instance, whose state is running. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
queues_states_flow |
Flow Queues | This metric is used to count the total number of queues in the entire instance, whose state is flow. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance | 1 minute |
fd_used |
File Descriptors | This metric is used to count the number of file descriptors occupied by the current node RabbitMQ. Unit: Count | 0~65535 | RabbitMQ instance node | 1 minute |
socket_used |
Socket Connections | This metric is used to count the number of Socket connections used by the current node RabbitMQ. Unit: Count | 0~50000 | RabbitMQ instance node | 1 minute |
proc_used |
Erlang Processes | This metric is used to count the number of Erlang processes used by the current node RabbitMQ. Unit: Count | 0~1048576 | RabbitMQ instance node | 1 minute |
mem_used |
Memory Usage | This metric is used to count the memory usage of the current node RabbitMQ. Unit: Byte | 0~32000000000 | RabbitMQ instance node | 1 minute |
disk_free |
Available Storage Space | This metric is used to count the available storage space of the current node. Unit: Byte | 0~500000000000 | RabbitMQ instance node | 1 minute |
rabbitmq_alive |
Node Alive Status | Indicates whether the RabbitMQ node is alive. Note: Instances purchased on or after April 2020 support this monitoring item. | 1:Alive0:Offline | RabbitMQ instance node | 1 minute |
rabbitmq_disk_usage |
Disk Usage Rate | Statistics the disk usage rate of the RabbitMQ node virtual machine. Unit: % Note: Instances purchased on or after April 2020 support this monitoring item. | 0~100% | RabbitMQ instance node | 1 minute |
rabbitmq_cpu_usage |
CPU Usage Rate | Statistics the CPU usage rate of the RabbitMQ node virtual machine. Unit: % Note: Instances purchased on or after April 2020 support this monitoring item. | 0~100% | RabbitMQ instance node | 1 minute |
rabbitmq_cpu_core_load |
CPU Core Average Load | Statistics the average load of each CPU core of the RabbitMQ node virtual machine. Note: Instances purchased on or after April 2020 support this monitoring item. | >0 | RabbitMQ instance node | 1 minute |
rabbitmq_memory_usage |
Memory Usage Rate | Statistics the memory usage rate of the RabbitMQ node virtual machine. Unit: % Note: Instances purchased on or after April 2020 support this monitoring item. | 0~100% | RabbitMQ instance node | 1 minute |
rabbitmq_disk_read_await |
Disk Average Read Operation Time | This metric is used to count the average time of each read IO operation of the disk during the measurement period. Unit: ms Note: Instances purchased on or after June 2020 support this monitoring item. | >0 | RabbitMQ instance node | 1 minute |
rabbitmq_disk_write_await |
Disk Average Write Operation Time | This metric is used to count the average time of each write IO operation of the disk during the measurement period. Unit: ms Note: Instances purchased on or after June 2020 support this monitoring item. | >0 | RabbitMQ instance node | 1 minute |
rabbitmq_node_bytes_in_rate |
Network Inbound Traffic | Statistics the network access inbound traffic per second of the RabbitMQ node. Unit: Byte/s Note: Instances purchased on or after June 2020 support this monitoring item. | >0 | RabbitMQ instance node | 1 minute |
rabbitmq_node_bytes_out_rate |
Network Outbound Traffic | Statistics the network access outbound traffic per second of the RabbitMQ node. Unit: Byte/s Note: Instances purchased on or after June 2020 support this monitoring item. | >0 | RabbitMQ instance node | 1 minute |
rabbitmq_node_queues |
Node Queues | This metric is used to count the number of queues of the RabbitMQ node. Unit: Count Note: Instances purchased on or after June 2020 support this monitoring item. | >0 | RabbitMQ instance node | 1 minute |
rabbitmq_memory_high_watermark |
Memory High Watermark Status | Indicates whether the RabbitMQ node triggers the memory high watermark. If triggered, it will block all producers in the cluster. Note: Instances purchased on or after June 2020 support this monitoring item. | 1:Triggered0:Not Triggered | RabbitMQ instance node | 1 minute |
rabbitmq_disk_insufficient |
Disk High Watermark Status | Indicates whether the RabbitMQ node triggers the disk high watermark. If triggered, it will block all producers in the cluster. Note: Instances purchased on or after June 2020 support this monitoring item. | 1:Triggered0:Not Triggered | RabbitMQ instance node | 1 minute |
rabbitmq_disk_read_rate |
Disk Read Traffic | Statistics the read byte size per second of the node disk. Unit: KB/s Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance node | 1 minute |
rabbitmq_disk_write_rate |
Disk Write Traffic | Statistics the write byte size per second of the node disk. Unit: KB/s Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance node | 1 minute |
queue_messages_unacknowledged |
Queue Unacknowledged Messages | This metric is used to count the number of unacknowledged messages in the queue. Unit: Count | 0~10000000 | RabbitMQ instance queue | 1 minute |
queue_messages_ready |
Queue Ready Messages | This metric is used to count the number of ready messages in the queue. Unit: Count | 0~10000000 | RabbitMQ instance queue | 1 minute |
queue_consumers |
Consumers Count | This metric is used to count the number of consumers subscribed to the queue. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance queue | 1 minute |
queue_messages_publish_rate |
Publish Rate | This metric is used to count the message inflow rate per second of the queue. Unit: Count/s Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance queue | 1 minute |
queue_messages_ack_rate |
Deliver Rate (Manual Acknowledge) | This metric is used to count the message deliver rate per second of the queue that is acknowledged by the client. Unit: Count/s Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance queue | 1 minute |
queue_messages_deliver_get_rate |
Deliver Rate | This metric is used to count the message outflow rate per second of the queue. Unit: Count/s Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance queue | 1 minute |
queue_messages_redeliver_rate |
Redeliver Rate | This metric is used to count the redeliver message rate per second of the queue. Unit: Count/s Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance queue | 1 minute |
queue_messages_persistent |
Total Messages (Persistent) | This metric is used to count the total number of persistent messages in the queue (always 0 for transient queues). Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance queue | 1 minute |
queue_messages_ram |
Total Messages (Memory) | This metric is used to count the total number of messages residing in memory in the queue. Unit: Count Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance queue | 1 minute |
queue_memory |
Erlang Process Consumed Bytes | This metric is used to count the memory bytes consumed by the Erlang process associated with the queue, including stack, heap, and internal structures. Unit: Byte Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance queue | 1 minute |
queue_message_bytes |
Total Message Size | This metric is used to count the total size of all messages in the queue (bytes). Unit: Byte Note: Instances purchased on or after May 16, 2022 support this monitoring item. | >= 0 | RabbitMQ instance queue | 1 minute |
Object¶
After the data is synchronized normally, you can view the data in Guance's 「Infrastructure - Resource Catalog」.
{
"measurement": "huaweicloud_rabbitmq",
"tags": {
"RegionId" : "cn-north-4",
"project_id" : "756ada1aa17e4049b2a16ea41912e52d",
"enterprise_project_id" : "o78hhbss-xxxx-xxxx-xxxx-cba3d38cf2f9",
"instance_id" : "c0b0ea90-xxxx-xxxx-xxxx-cba3d38cf2f9",
"instance_name" : "rabbitmq-xxxx",
"engine" : "rabbitmq",
"status" : "RUNNING"
},
"fields": {
"charging_mode" : "1",
"engine" : "rabbitmq",
"engine_version" : "3.8.35",
"connect_address" : "192.xxx.0.xxx",
"description" : "",
"specification" : "rabbitmq.2u4g.single * 1 broker",
"storage_space" : 83,
"used_storage_space" : 0,
"access_user" : "rabbit_mh",
"resource_spec_code" : "",
"created_at" : "1687143955266",
"maintain_begin" : "02:00:00",
"maintain_end" : "06:00:00",
"enable_publicip" : false,
"publicip_address" : "127.xx.xx.34",
"publicip_id" : "xxxxxxxxxxx",
"management_connect_address": "http://192.xxx.0.xxx:15672",
"storage_space" : 83,
"available_zones" : "[Instance JSON Data]"
}
}
Some field descriptions are as follows:
| Field | Type | Description |
|---|---|---|
specification |
String | Instance specification. RabbitMQ instance single returns vm specification. RabbitMQ instance cluster returns vm specification and node count. |
charging_mode |
String | Billing mode, 1 indicates pay-as-you-go, 0 indicates subscription. |
available_zones |
String | The availability zone where the instance node is located, returns "Availability Zone ID". |
maintain_begin |
String | Maintenance window start time, format is HH |
maintain_end |
String | Maintenance window end time, format is HH |
created_at |
String | Completion creation time. Format is timestamp, which refers to the total milliseconds deviation from Greenwich Mean Time January 1, 1970 00:00:00 to the specified time. |
resource_spec_code |
String | Resource specification identifier dms.instance.rabbitmq.single.c3.2u4g:RabbitMQ single, vm specification 2u4g dms.instance.rabbitmq.single.c3.4u8g:RabbitMQ single, vm specification 4u8g dms.instance.rabbitmq.single.c3.8u16g:RabbitMQ single, vm specification 8u16g dms.instance.rabbitmq.single.c3.16u32g:RabbitMQ single, vm specification 16u32g dms.instance.rabbitmq.cluster.c3.4u8g.3:RabbitMQ cluster, vm specification 4u8g, 3 nodes dms.instance.rabbitmq.cluster.c3.4u8g.5:RabbitMQ cluster, vm specification 4u8g, 5 nodes dms.instance.rabbitmq.cluster.c3.4u8g.7:RabbitMQ cluster, vm specification 4u8g, 7 nodes dms.instance.rabbitmq.cluster.c3.8u16g.3:RabbitMQ cluster, vm specification 8u16g, 3 nodes dms.instance.rabbitmq.cluster.c3.8u16g.5:RabbitMQ cluster, vm specification 8u16g, 5 nodes dms.instance.rabbitmq.cluster.c3.8u16g.7:RabbitMQ cluster, vm specification 8u16g, 7 nodes dms.instance.rabbitmq.cluster.c3.16u32g.3:RabbitMQ cluster, vm specification 16u32g, 3 nodes dms.instance.rabbitmq.cluster.c3.16u32g.5:RabbitMQ cluster, vm specification 16u32g, 5 nodes dms.instance.rabbitmq.cluster.c3.16u32g.7:RabbitMQ cluster, vm specification 16u32g, 7 nodes |
Note: The fields in
tags,fieldsmay change with subsequent updatesTip 1: The value of
tags.instance_idis the instance ID, as the unique identifier