藉助於阿里雲ARMS Prometheus監控服務和Grafana的指標儲存和展示能力,雲訊息佇列 RabbitMQ 版為企業版和鉑金版執行個體提供Dashboard大盤功能。通過該功能,您可以查看企業版和鉑金版執行個體、Vhost、Queue和Exchange的各種指標資料,協助您及時發現和定位問題。本文介紹Dashboard大盤的指標詳情和使用方法。
計費說明
雲訊息佇列 RabbitMQ 版的Dashboard大盤指標在阿里雲ARMS Prometheus監控服務中屬於基礎指標,基礎指標不收取費用。因此,使用Dashboard大盤功能不收取費用。更多資訊,請參見指標說明和隨用隨付。
使用限制
Serverless系列和預付費系列的企業版、鉑金版執行個體支援Dashboard大盤功能,預付費系列的專業版暫不支援。
服務關聯角色
查看Dashboard大盤時,雲訊息佇列 RabbitMQ 版會為您自動建立服務關聯角色AliyunServiceRoleForAmqpMonitoring。
如果未建立服務關聯角色,雲訊息佇列 RabbitMQ 版會為您自動建立一個服務關聯角色,以便您使用雲訊息佇列 RabbitMQ 版Dashboard功能。
如果已建立服務關聯角色,雲訊息佇列 RabbitMQ 版不會重複建立。
關於服務關聯角色的更多資訊,請參見服務關聯角色。
Metrics指標詳情
指標概述
雲訊息佇列 RabbitMQ 版Dashboard大盤提供以下指標:
Overview:查看執行個體下或Vhost下訊息數量、串連數和消費者數量等相關指標。
Connection:查看執行個體下或Vhost下的串連數。
Exchange:查看訊息流程入和流出Exchange的數量。
Queue:查看Queue中訊息數、API調用次數和消費者數量。
Consumer:查看訊息在消費端的處理結果。
除了rabbitmq_instance_api_tps_max為秒級指標,其他指標都為分鐘級指標。
Overview
Metrics Type | Metrics Name | 單位 | 指標說明 | Label |
gauge | rabbitmq_instance_api_tps_max | count/s | 每分鐘執行個體調用API的最大TPS值。 取值規則:以1分鐘為周期,每秒鐘採樣一次,取這60次採樣的最大值。 | {tenant_userid, instanceId} |
counter | rabbitmq_connections_opened_total | count | 已開啟的串連數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_connections_closed_total | count | 已關閉的串連數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_channels_opened_total | count | 已開啟的通道數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_channels_closed_total | count | 已關閉的通道數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_queues_declared_total | count | 已建立的Queue的數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_queues_deleted_total | count | 已刪除的Queue的數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_exchange_declared_total | count | 已建立的Exchange的數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_exchange_deleted_total | count | 已刪除的Exchange的數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_exchange_bind_total | count | Exchange添加的綁定數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_exchange_unbind_total | count | Exchange解除的綁定數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_queue_bind_total | count | Queue添加的綁定數量。 | {tenant_userid,instanceId,vHost} |
counter | rabbitmq_queue_unbind_total | count | Queue解除的綁定數量。 | {tenant_userid,instanceId,vHost} |
gauge | rabbitmq_connections | count | 所有當前開啟的串連數量。 | {tenant_userid,instanceId,vHost} |
gauge | rabbitmq_channels | count | 所有當前開啟的通道數量。 | {tenant_userid,instanceId,vHost} |
Connections
Metrics Type | Metrics Name | 單位 | 指標說明 | Label |
gauge | rabbitmq_connection_channels | count | Connection下的Channel數量。 | {tenant_userid,instanceId,vHost,remoteAddress} |
Exchange
Metrics Type | Metrics Name | 單位 | 指標說明 | Label |
counter | rabbitmq_exchange_messages_published_in_total | count | 流入到Exchange中的訊息量。 | {tenant_userid,instanceId,vHost,exchangeName} |
counter | rabbitmq_exchange_messages_published_out_total | count | 從Exchange中流出的訊息量。 | {tenant_userid,instanceId,vHost,exchangeName} |
Queue
Metrics Type | Metrics Name | 單位 | 指標說明 | Label |
counter | rabbitmq_queue_messages_published_total | count | 發送到Queue中的訊息量。 | {tenant_userid,instanceId,vHost,queueName} |
gauge | rabbitmq_queue_messages_ready | count | Queue中已就緒可以被投遞給消費者的訊息量。 | {tenant_userid,instanceId,vHost,queueName} |
gauge | rabbitmq_queue_messages_timing | count | Queue中處於定時中的訊息量。 | {tenant_userid,instanceId,vHost,queueName} |
gauge | rabbitmq_queue_messages_unacked | count | Queue中正在被處理還未返回ACK響應的訊息量。 | {tenant_userid,instanceId,vHost,queueName} |
counter | rabbitmq_queue_deliver_total | count | BasicConsume介面被調用的次數。 | {tenant_userid,instanceId,vHost,queueName} |
counter | rabbitmq_queue_get_total | count | BasicGet介面被調用的次數。 | {tenant_userid,instanceId,vHost,queueName} |
counter | rabbitmq_queue_ack_total | count | BasicAck介面被調用的次數。 | {tenant_userid,instanceId,vHost,queueName} |
counter | rabbitmq_queue_uack_total | count | BasicNack介面被調用的次數。 | {tenant_userid,instanceId,vHost,queueName} |
counter | rabbitmq_queue_recover_total | count | BasicRecover介面被調用的次數。 | {tenant_userid,instanceId,vHost,queueName} |
counter | rabbitmq_queue_reject_total | count | BasicReject介面被調用的次數。 | {tenant_userid,instanceId,vHost,queueName} |
gauge | rabbitmq_queue_consumers | count | Queue中所有消費者的數量。 | {tenant_userid,instanceId,vHost,queueName} |
Consumer
Metrics Type | Metrics Name | 單位 | 指標說明 | Label |
gauge | rabbitmq_consumer_acked_process_time_avg | count | 返迴響應結果的訊息的平均處理耗時。 | {tenant_userid,instanceId,vHost,queueName,remoteAddress,ackType} |
gauge | rabbitmq_consumer_unacked_process_time_avg | count | 未返迴響應結果的訊息的平均處理耗時。 | {tenant_userid,instanceId,vHost,queueName,remoteAddress,ackType} |
gauge | rabbitmq_consumer_acked_messages | count | 返迴響應結果的訊息量。 | {tenant_userid,instanceId,vHost,queueName,remoteAddress,ackType} |
gauge | rabbitmq_consumer_unacked_messages | count | 未返迴響應結果的訊息量。 | {tenant_userid,instanceId,vHost,queueName,remoteAddress} |
Metrics Type說明
雲訊息佇列 RabbitMQ 版定義的Metrics完全相容開源Prometheus的標準,涉及的Metrics的類型為counter和gauge。
counter:累計型的度量指標,其數值只增不減。例如,API調用次數。
gauge:一種既可以增加又可以減少的度量指標,其數值表示統計對象的瞬間值。例如,API調用的TPS。
Lable說明
雲訊息佇列 RabbitMQ 版Metrics指標中Label的說明如下:
tenant_userid:表示阿里雲的帳號ID。
instanceId:表示雲訊息佇列 RabbitMQ 版的執行個體ID。
vHost:表示雲訊息佇列 RabbitMQ 版執行個體下的Vhost的名稱。
remoteAddress:表示雲訊息佇列 RabbitMQ 版用戶端的IP地址。
Exchange:表示雲訊息佇列 RabbitMQ 版執行個體下的Exchange的名稱。
queueName:表示雲訊息佇列 RabbitMQ 版執行個體下的Queue的名稱。
ackType:表示用戶端處理訊息的響應結果。
查看Dashboard
前提條件
建立雲訊息佇列 RabbitMQ 版執行個體。具體操作,請參見執行個體管理。
雲訊息佇列 RabbitMQ 版執行個體下已建立Vhost、Queue和Exchange並可用。具體操作,請參見Vhost管理、Exchange管理和Queue管理。
開通應用即時監控服務ARMS。具體操作,請參見開通ARMS Prometheus監控服務。
操作步驟
登入雲訊息佇列 RabbitMQ 版控制台,然後在左側導覽列選擇实例列表。
在实例列表頁面的頂部功能表列選擇地區,然後在執行個體列表中,單擊目標執行個體名稱。
在左側導覽列單擊Dashboard,在Dashboard頁面,查看Dashboard大盤。
您可以根據需要,指定Vhost、Exchange、Queue和時間範圍查看Dashboard大盤。
指定Vhost、Exchange或Queue查看:在Dashboard頁面,單擊Vhost、Exchange或Queue下拉框,在下拉框中輸入您需要指定查看的Vhost、Exchange或Queue。若不輸入,則預設查看該執行個體下所有Vhost、Exchange和Queue的指標。

指定時間範圍查看:在Dashboard頁面右上方,單擊時間選擇框,在彈出的下拉式清單中選擇預定義的相對時間區間,例如過去5分鐘、過去12小時、過去30天等,也可以通過設定時間起點和終點來設定自訂的絕對時間區間。

設定完成後,您可在Dashboard頁面查看到指定Vhost、Exchange、Queue或時間範圍的指標資訊。關於指標項的說明,請參見Metrics指標詳情。
在哪裡可以擷取Dashboard的Metrics指標資料?
Dashboard大盤上的所有指標已經儲存在您阿里雲帳號下的Prometheus服務中,查詢步驟如下:
登入ARMS控制台,在左側導覽列單擊接入中心。
在接入中心頁面的搜尋文字框輸入
RabbitMQ,單擊
表徵圖。在搜尋的結果中,選擇需要接入的雲端服務(如阿里雲 RabbitMQ 企業版)。接入的具體操作,請參見步驟一:接入雲端服務監控資料。
接入成功後,在左側導覽列單擊接入管理。
在已接入環境頁簽下的雲端服務地區環境列表,單擊目標環境名稱進入雲端服務環境詳情頁面。
在組件管理頁簽的基本資料地區,單擊Prometheus 執行個體右側的雲端服務地區。
在設定頁簽,可以擷取不同的資料訪問方式。

如何將Dashboard的指標資料接入自建Grafana?
雲訊息佇列 RabbitMQ 版的所有指標資料已儲存到您的阿里雲Managed Service for Prometheus中,您可以參照在哪裡可以擷取Dashboard的Metrics指標資料?中的步驟,接入雲端服務並擷取環境名稱和HTTP API地址後,通過API將雲訊息佇列 RabbitMQ 版的Dashboard的指標資料接入到本地自建Grafana中。具體操作,請參見使用HTTP API地址對接Grafana或自建應用中接入Prometheus資料。