La fonctionnalité Dashboard s'appuie sur les capacités de stockage et d'affichage des métriques de Managed Service for Prometheus et de Managed Service for Grafana, intégrées à Application Real-Time Monitoring Service (ARMS). Elle vous permet de consulter diverses métriques relatives à vos instances, vhosts, files d'attente et exchanges. Cette visibilité facilite la détection précoce et le diagnostic des incidents. Cette rubrique présente les métriques disponibles dans le tableau de bord et explique comment les exploiter.
Limitations
La fonctionnalité Dashboard est disponible pour les types d'instance suivants :
Série Serverless : Paiement à l'utilisation cumulée (partagé), Capacité réservée + Bursting (partagé), Capacité réservée + Bursting (dédié).
Série par abonnement : Édition Enterprise, Édition Platinum.
L'Édition Professional n'est pas prise en charge.
Facturation
Le tableau de bord ApsaraMQ for RabbitMQ affiche les métriques de base fournies par Managed Service for Prometheus. Ces métriques étant gratuites, l'utilisation de la fonctionnalité Dashboard l'est également. Pour plus d'informations, consultez les rubriques Métriques et Paiement à l'utilisation.
Rôles liés au service
Lorsque vous consultez le tableau de bord, ApsaraMQ for RabbitMQ crée automatiquement le rôle lié au service AliyunServiceRoleForAMQPMonitoring.
Si aucun rôle lié au service n'existe, ApsaraMQ for RabbitMQ en crée un pour vous permettre d'utiliser la fonctionnalité Dashboard ApsaraMQ for RabbitMQ.
Si le rôle lié au service existe déjà, ApsaraMQ for RabbitMQ ne le recrée pas.
Pour en savoir plus sur les rôles liés au service, consultez la rubrique Rôles liés au service.
Métriques
Vue d'ensemble des métriques
Le tableau de bord ApsaraMQ for RabbitMQ fournit les métriques suivantes :
Vue d'ensemble : affiche des métriques telles que le nombre de messages, de connexions et de consommateurs pour une instance ou un vhost.
Connexion : affiche le nombre de connexions pour une instance ou un vhost.
Exchange : affiche le nombre de messages entrants et sortants pour un exchange.
File d'attente : affiche le nombre de messages, d'appels API et de consommateurs pour une file d'attente.
Consommateur : affiche les résultats du traitement des messages par les consommateurs.
Toutes les métriques sont rapportées chaque minute, à l'exception de rabbitmq_instance_api_tps_max, qui est rapportée chaque seconde.
Vue d'ensemble
|
Type de métrique |
Nom de la métrique |
Unité |
Description |
Libellé |
|
gauge |
rabbitmq_instance_api_tps_max |
count/s |
Nombre maximal de transactions par seconde (TPS) pour les appels API vers l'instance sur une période d'une minute. Cette valeur correspond au pic observé parmi 60 échantillons collectés à intervalles d'une seconde. |
{tenant_userid, instanceId} |
|
counter |
rabbitmq_connections_opened_total |
count |
Nombre total de connexions ouvertes. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_connections_closed_total |
count |
Nombre total de connexions fermées. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_channels_opened_total |
count |
Nombre total de canaux ouverts. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_channels_closed_total |
count |
Nombre total de canaux fermés. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_queues_declared_total |
count |
Nombre total de files d'attente déclarées. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_queues_deleted_total |
count |
Nombre total de files d'attente supprimées. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_exchange_declared_total |
count |
Nombre total d'exchanges déclarés. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_exchange_deleted_total |
count |
Nombre total d'exchanges supprimés. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_exchange_bind_total |
count |
Nombre total de liaisons ajoutées aux exchanges. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_exchange_unbind_total |
count |
Nombre total de liaisons supprimées des exchanges. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_queue_bind_total |
count |
Nombre total de liaisons ajoutées aux files d'attente. |
{tenant_userid,instanceId,vhost} |
|
counter |
rabbitmq_queue_unbind_total |
count |
Nombre total de liaisons supprimées des files d'attente. |
{tenant_userid,instanceId,vhost} |
|
gauge |
rabbitmq_connections |
count |
Nombre actuel de connexions ouvertes. |
{tenant_userid,instanceId,vhost} |
|
gauge |
rabbitmq_channels |
count |
Nombre actuel de canaux ouverts. |
{tenant_userid,instanceId,vhost} |
Connexions
|
Type de métrique |
Nom de la métrique |
Unité |
Description |
Libellé |
|
gauge |
rabbitmq_connection_channels |
count |
Nombre de canaux sur une connexion. |
{tenant_userid,instanceId,vhost,remoteAddress} |
Exchange
|
Type de métrique |
Nom de la métrique |
Unité |
Description |
Libellé |
|
counter |
rabbitmq_exchange_messages_published_in_total |
count |
Nombre total de messages publiés vers un exchange. |
{tenant_userid,instanceId,vhost,exchangeName} |
|
counter |
rabbitmq_exchange_messages_published_out_total |
count |
Nombre total de messages routés depuis un exchange. |
{tenant_userid,instanceId,vhost,exchangeName} |
File d'attente
|
Type de métrique |
Nom de la métrique |
Unité |
Description |
Libellé |
|
counter |
rabbitmq_queue_messages_published_total |
count |
Nombre total de messages publiés vers une file d'attente. |
{tenant_userid,instanceId,vhost,queueName} |
|
gauge |
rabbitmq_queue_messages_ready |
count |
Nombre de messages dans une file d'attente prêts à être livrés aux consommateurs. |
{tenant_userid,instanceId,vhost,queueName} |
|
gauge |
rabbitmq_queue_messages_timing |
count |
Nombre de messages planifiés dans une file d'attente. |
{tenant_userid,instanceId,vhost,queueName} |
|
gauge |
rabbitmq_queue_messages_unacked |
count |
Nombre de messages livrés à un consommateur mais pas encore acquittés. Cette métrique équivaut à la métrique rabbitmq_queue_unacked_deliver_messages de RabbitMQ open source. |
{tenant_userid,instanceId,vhost,queueName} |
|
counter |
rabbitmq_queue_deliver_total |
count |
Nombre total d'appels de la commande Basic.Consume. |
{tenant_userid,instanceId,vhost,queueName} |
|
counter |
rabbitmq_queue_get_total |
count |
Nombre total d'appels de la commande Basic.Get. |
{tenant_userid,instanceId,vhost,queueName} |
|
counter |
rabbitmq_queue_ack_total |
count |
Nombre total d'appels de la commande Basic.Ack. |
{tenant_userid,instanceId,vhost,queueName} |
|
counter |
rabbitmq_queue_uack_total |
count |
Nombre total d'appels de la commande Basic.Nack. |
{tenant_userid,instanceId,vhost,queueName} |
|
counter |
rabbitmq_queue_recover_total |
count |
Nombre total d'appels de la commande Basic.Recover. |
{tenant_userid,instanceId,vhost,queueName} |
|
counter |
rabbitmq_queue_reject_total |
count |
Nombre total d'appels de la commande Basic.Reject. |
{tenant_userid,instanceId,vhost,queueName} |
|
gauge |
rabbitmq_queue_consumers |
count |
Nombre actuel de consommateurs sur une file d'attente. |
{tenant_userid,instanceId,vhost,queueName} |
Consommateur
|
Type de métrique |
Nom de la métrique |
Unité |
Description |
Libellé |
|
gauge |
rabbitmq_consumer_acked_process_time_avg |
count |
Temps moyen de traitement des messages acquittés. |
{tenant_userid,instanceId,vhost,queueName,remoteAddress,ackType} |
|
gauge |
rabbitmq_consumer_unacked_process_time_avg |
count |
Temps moyen de traitement des messages non acquittés. |
{tenant_userid,instanceId,vhost,queueName,remoteAddress,ackType} |
|
gauge |
rabbitmq_consumer_acked_messages |
count |
Nombre de messages acquittés. |
{tenant_userid,instanceId,vhost,queueName,remoteAddress,ackType} |
|
gauge |
rabbitmq_consumer_unacked_messages |
count |
Nombre de messages non acquittés. |
{tenant_userid,instanceId,vhost,queueName,remoteAddress} |
Types de métriques
Les métriques ApsaraMQ for RabbitMQ sont entièrement compatibles avec le standard Prometheus open source. Les types de métriques pris en charge sont counter et gauge.
counter : métrique cumulative qui ne fait qu'augmenter. Par exemple, le nombre d'appels API.
gauge : métrique pouvant augmenter ou diminuer, représentant une valeur instantanée. Par exemple, le TPS des appels API.
Libellés
La liste suivante décrit les libellés des métriques ApsaraMQ for RabbitMQ :
tenant_userid : ID de votre compte Alibaba Cloud.
instanceId : ID de l'instance ApsaraMQ for RabbitMQ.
vhost : nom du vhost dans l'instance ApsaraMQ for RabbitMQ.
remoteAddress : adresse IP du client ApsaraMQ for RabbitMQ.
exchangeName : nom de l'exchange dans l'instance ApsaraMQ for RabbitMQ.
queueName : nom de la file d'attente dans l'instance ApsaraMQ for RabbitMQ.
ackType : réponse du client après le traitement d'un message.
Tableau de bord
Prérequis
Une instance ApsaraMQ for RabbitMQ a été créée. Pour plus d'informations, consultez la rubrique Gestion des instances.
Un vhost, une file d'attente et un exchange ont été créés sur l'instance ApsaraMQ for RabbitMQ. Pour plus d'informations, consultez les rubriques Gestion des vhosts, Gestion des exchanges et Gestion des files d'attente.
ARMS a été activé. Pour plus d'informations, consultez la rubrique Activer ARMS pour la surveillance Prometheus.
Procédure
Connectez-vous à la console ApsaraMQ for RabbitMQ. Dans le volet de navigation de gauche, cliquez sur Instances.
Dans la barre de navigation supérieure de la page Instances, sélectionnez la région où se trouve l'instance à gérer. Ensuite, dans la liste des instances, cliquez sur le nom de l'instance concernée.
Dans la barre de navigation de gauche, cliquez sur Dashboard. Sur la page Dashboard, consultez le tableau de bord.
-
Filtrez le tableau de bord par vhost, exchange, file d'attente et plage horaire.
Pour filtrer par vhost, exchange ou file d'attente : sur la page Dashboard, utilisez la liste déroulante Vhost, Exchange ou File d'attente pour sélectionner ou saisir la ressource souhaitée. Si vous laissez ces champs vides, le tableau de bord affiche les métriques de tous les vhosts, exchanges et files d'attente de l'instance. La section Vue d'ensemble du tableau de bord présente quatre métriques clés : Messages prêts, Connexions actuelles, Canaux actuels et Consommateurs actuels. Le haut de la page propose également des liens rapides, tels que Détails des métriques, Dépannage avec la trace des messages et Importer vers Grafana Pro.
Pour filtrer par plage horaire : dans le coin supérieur droit de la page Dashboard, cliquez sur le sélecteur de temps. Dans la liste déroulante, sélectionnez une plage relative, telle que les 5 dernières minutes, les 12 dernières heures ou les 30 derniers jours. Vous pouvez également spécifier une plage absolue personnalisée en définissant une heure de début et une heure de fin.
Après avoir configuré les filtres, la page Dashboard affiche les métriques correspondant au vhost, à l'exchange, à la file d'attente ou à la plage horaire spécifiés. Pour les descriptions des métriques, consultez la section Détails des métriques.
Métriques du tableau de bord
Les métriques du tableau de bord sont stockées dans Managed Service for Prometheus sous votre compte Alibaba Cloud. Suivez ces étapes pour les interroger :
Connectez-vous à la console ARMS. Dans le volet de navigation de gauche, cliquez sur Integration Center.
Sur la page Integration Center, saisissez
RabbitMQdans la zone de recherche et cliquez sur l'icône de recherche
.Dans les résultats de recherche, sélectionnez le service cloud à intégrer, par exemple ApsaraMQ for RabbitMQ (Enterprise Edition). Pour plus de détails, consultez la rubrique Étape 1 : Intégrer les données de surveillance du service cloud.
Une fois l'intégration réussie, cliquez sur Integration Management dans le volet de navigation de gauche.
Sous l'onglet Integrated Environments, dans la liste Cloud Service Environments, cliquez sur le nom de l'environnement cible.
Sous l'onglet Component Management, dans la section Basic Information, cliquez sur la région située à côté de Prometheus Instance.
L'onglet {key, select, RAM {RAM} Overview {Overview} Identities {Identities} Users {Users} Groups {Groups} Roles {Roles} Settings {Settings} Permissions {Permissions} Grants {Grants} Troubleshoot {Troubleshooting} Policies {Policies} Integrations {Integrations} Providers {SSO} Applications {OAuth (Preview)} CloudSSO {CloudSSO} AccessAnalyzing {Access Analysis} Analyzers {Analyzers} Findings {Findings} Beta {Beta} Governance {Cloud Governance} AgentControl {Agent Management} other {{key}} } répertorie les méthodes d'accès aux données disponibles. Cette page affiche les URL des endpoints pour l'instance Prometheus, y compris l'URL de lecture distante, l'URL d'écriture distante, l'URL Push Gateway, l'URL OpenTelemetry et l'URL HTTP API (pour Grafana). La page fournit des URL pour les réseaux publics et privés pour chaque endpoint. Le format de l'URL commence par une base telle que
https://cn-hangzhou.arms.aliyuncs.comet inclut un paramètre d'identifiant d'instance. Chaque section comprend un lien vers un guide utilisateur, et vous pouvez générer un jeton en bas de la page.
Intégration Grafana auto-gérée
Toutes les métriques ApsaraMQ for RabbitMQ sont stockées dans Managed Service for Prometheus sous votre compte Alibaba Cloud. Suivez les étapes de la section Métriques du tableau de bord pour intégrer le service cloud et obtenir le nom de l'environnement ainsi que l'URL HTTP API. Vous pouvez ensuite utiliser l'API pour importer les métriques du tableau de bord ApsaraMQ for RabbitMQ dans votre instance Grafana auto-gérée. Pour plus d'informations, consultez la rubrique Accéder aux données de surveillance Prometheus via les URL HTTP API.
Puis-je redémarrer un consommateur directement depuis le tableau de bord RabbitMQ ?
Non. Le tableau de bord sert uniquement à consulter les métriques des instances, vhosts, files d'attente et exchanges. Les opérations telles que le redémarrage des consommateurs ne sont pas prises en charge depuis le tableau de bord. Pour redémarrer un consommateur, effectuez cette opération dans l'environnement où le consommateur est réellement déployé, par exemple sur une instance ECS ou dans Container Service for Kubernetes (ACK).