Skip to content

Huawei Cloud DMS RabbitMQ

Collect Huawei Cloud DMS RabbitMQ Metrics

Configuration

Install Func

It is recommended to enable TrueWatch Integration - Extensions - DataFlux Func (Automata): All prerequisites are automatically installed. Please proceed with the script installation.

If deploying Func manually, refer to Manual Func Deployment

Install Script

Note: Please prepare the Huawei Cloud AK with the required permissions in advance (for simplicity, you can grant the global read-only permission ReadOnlyAccess).

  1. Log in to the Func console, click 【Script Market】, enter the TrueWatch Script Market, and search for ID: integration_huaweicloud_rabbitmq

  2. Click 【Install】, then enter the corresponding parameters: Huawei Cloud AK, SK, and account name.

  3. Click 【Deploy Startup Script】, the system will automatically create the Startup script set and configure the corresponding startup scripts.

  4. After enabling, you can see the corresponding automatic trigger configuration in 「Manage / Automatic Trigger Configuration」. Click 【Execute】 to immediately execute it once without waiting for the scheduled time. Wait a moment, and you can view the execution task records and corresponding logs.

Verification

  1. In 「Manage / Automatic Trigger Configuration」, confirm whether the corresponding task has the automatic trigger configuration, and check the task records and logs for any exceptions.
  2. In TrueWatch, 「Infrastructure - Resource Catalog」, check if the asset information exists.
  3. In TrueWatch, 「Metrics」, check if the corresponding monitoring data is available.

Metrics

Configure Huawei Cloud DMS RabbitMQ Metrics. You can collect more metrics by configuration Huawei Cloud DMS RabbitMQ Metrics Details

Metric ID Metric Name Metric Description Value Range Measurement Object Monitoring Period (Raw 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 Counts the real-time message publish rate in the RabbitMQ instance. Unit: Count/s 0~25000 RabbitMQ instance 1 minute
deliver Deliver Rate (Manual Ack) Counts the real-time message deliver rate (manual acknowledgment) in the RabbitMQ instance. Unit: Count/s 0~25000 RabbitMQ instance 1 minute
deliver_no_ack Deliver Rate (Auto Ack) Counts the real-time message deliver rate (auto acknowledgment) 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 instance with the state of 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 instance with the state of 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 instance with the state of 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 instance with the state of 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 instance with the state of 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 instance with the state of 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 instance with the state of 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 instance with the state of 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 instance with the state of 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 instance with the state of 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 used by the current node's 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's 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's 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's RabbitMQ. Unit: Byte 0~32000000000 RabbitMQ instance node 1 minute
disk_free Free Disk Space This metric is used to count the free disk space available on 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: Alive 0: Offline RabbitMQ instance node 1 minute
rabbitmq_disk_usage Disk Usage Rate Counts the disk usage rate of the RabbitMQ node's 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 Counts the CPU usage rate of the RabbitMQ node's 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 Load Counts the average load per CPU core of the RabbitMQ node's 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 Counts the memory usage rate of the RabbitMQ node's 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 Read Operation Latency This metric is used to count the average latency of each read IO operation on 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 Write Operation Latency This metric is used to count the average latency of each write IO operation on 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 Counts the network 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 Counts the network 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 on 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 has triggered 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: Triggered 0: Not Triggered RabbitMQ instance node 1 minute
rabbitmq_disk_insufficient Disk High Watermark Status Indicates whether the RabbitMQ node has triggered 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: Triggered 0: Not Triggered RabbitMQ instance node 1 minute
rabbitmq_disk_read_rate Disk Read Traffic Counts the disk read traffic per second of the node. 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 Counts the disk write traffic per second of the node. 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 Consumer 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 number of messages flowing into the queue per second. 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 Acknowledge Rate (Manual Ack) This metric is used to count the number of messages delivered to the client and acknowledged per second in 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_deliver_get_rate Deliver Rate This metric is used to count the number of messages flowing out of the queue per second. 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 number of redelivered messages per second in 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 Memory Usage This metric is used to count the memory bytes consumed by the Erlang processes 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 (in bytes). Unit: Byte Note: Instances purchased on or after May 16, 2022 support this monitoring item. >= 0 RabbitMQ instance queue 1 minute

Objects

After data synchronization is normal, you can view the data in TrueWatch'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]"
  }
}

Partial field descriptions are as follows:

Field Type Description
specification String Instance specification. RabbitMQ single instance returns VM specification. RabbitMQ 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 zones where the instance nodes are located, returns "Availability Zone ID".
maintain_begin String Maintenance window start time, format is HH🇲🇲ss
maintain_end String Maintenance window end time, format is HH🇲🇲ss
created_at String Creation completion time. Format is timestamp, indicating the total milliseconds 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 instance, VM specification 2u4g dms.instance.rabbitmq.single.c3.4u8g RabbitMQ single instance, VM specification 4u8g dms.instance.rabbitmq.single.c3.8u16g RabbitMQ single instance, VM specification 8u16g dms.instance.rabbitmq.single.c3.16u32g RabbitMQ single instance, 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: Fields in tags, fields may change with subsequent updates

Note 1: The value of tags.instance_id is the instance ID, used as a unique identifier