En cas de pic de débit des messages, de retard des consommateurs ou de limitation des requêtes, il est essentiel de disposer d'une visibilité sur l'activité de vos instances RocketMQ. ApsaraMQ for RocketMQ s'intègre à CloudMonitor pour collecter des métriques à des intervalles d'une minute, les afficher sous forme de séries chronologiques et envoyer des notifications d'alerte en cas de dépassement des seuils.
La surveillance et les alertes sont gratuites.
Pour plus d'informations sur CloudMonitor, consultez la rubrique Surveillance des services cloud.
Prérequis
Avant de commencer, vérifiez que le rôle lié au service suivant existe dans votre compte :
Nom du rôle : AliyunServiceRoleForOns
Stratégie du rôle : AliyunServiceRolePolicyForOns
Ce rôle autorise ApsaraMQ for RocketMQ à accéder à CloudMonitor et à Application Real-Time Monitoring Service (ARMS) pour la surveillance, les alertes et les tableaux de bord.
Pour plus d'informations, consultez la rubrique Rôles liés aux services.
Métriques de surveillance
Les tableaux suivants répertorient les métriques disponibles par catégorie. Toutes les métriques sont agrégées à des intervalles d'une minute.
Pour les définitions des éléments Ready messages et Ready message queue time, consultez la rubrique Termes.
Métriques d'instance
Les métriques au niveau de l'instance suivent le débit global et la limitation du débit (throttling) d'une instance RocketMQ unique. Utilisez ces métriques pour surveiller les taux d'appels API, les volumes de messages et les événements de limitation.
|
Métrique |
Nom de la métrique |
Unité |
Dimensions |
|
Transactions par seconde (TPS) sur l'instance |
InstanceApiCallTps |
count/s |
userId, instanceId |
|
Messages envoyés par les producteurs par minute |
SendMessageCountPerInstance |
count/m |
userId, instanceId |
|
Messages reçus par les consommateurs par minute |
ReceiveMessageCountPerInstance |
count/m |
userId, instanceId |
|
Requêtes d'envoi de messages limitées par minute |
ThrottledSendRequestsPerInstance |
count/m |
userId, instanceId |
|
Requêtes de réception de messages limitées par minute |
ThrottledReceiveRequestsPerInstance |
count/m |
userId, instanceId |
Métriques de groupe
Les métriques au niveau du groupe mesurent les performances des consommateurs pour un groupe de consommateurs spécifique. Elles permettent de détecter le retard de consommation, d'identifier les consommateurs lents et de suivre la génération de messages morts (dead-letter).
|
Métrique |
Nom de la métrique |
Unité |
Dimensions |
|
Messages accumulés |
ConsumerLag |
count |
userId, instanceId, groupId |
|
Latence de traitement des messages |
ConsumerLagLatencyPerGid |
ms |
userId, instanceId, groupId |
|
Ready messages |
ReadyMessages |
count |
userId, instanceId, groupId |
|
Ready message queue time |
ReadyMessageQueueTime |
ms |
userId, instanceId, groupId |
|
Messages reçus par les consommateurs par minute |
ReceiveMessageCountPerGid |
count/m |
userId, instanceId, groupId |
|
Requêtes de réception de messages limitées par minute |
ThrottledReceiveRequestsPerGid |
count/m |
userId, instanceId, groupId |
|
Messages morts générés par minute |
SendDLQMessageCountPerGid |
count/m |
userId, instanceId, groupId |
Métriques de topic
Les métriques au niveau du topic suivent le débit des producteurs et la limitation du débit pour un topic spécifique.
|
Métrique |
Nom de la métrique |
Unité |
Dimensions |
|
Messages envoyés par les producteurs par minute |
SendMessageCountPerTopic |
count/m |
userId, instanceId, topic |
|
Requêtes d'envoi de messages limitées par minute |
ThrottledSendRequestsPerTopic |
count/m |
userId, instanceId, topic |
Métriques de groupe et de topic
Ces métriques croisent un groupe de consommateurs et un topic spécifiques pour offrir une vue granulaire. Utilisez-les pour identifier précisément les problèmes de consommation au niveau du topic au sein d'un groupe.
|
Métrique |
Nom de la métrique |
Unité |
Dimensions |
|
Messages accumulés |
ConsumerLagPerGidTopic |
count |
userId, instanceId, groupId, topic |
|
Latence de traitement des messages |
ConsumerLagLatencyPerGidTopic |
ms |
userId, instanceId, topic, groupId |
|
Ready messages |
ReadyMessagesPerGidTopic |
count |
userId, instanceId, groupId, topic |
|
Ready message queue time |
ReadyMessageQueueTimePerGidTopic |
ms |
userId, instanceId, groupId, topic |
|
Messages reçus par les consommateurs par minute |
ReceiveMessageCountPerGidTopic |
count/m |
userId, instanceId, topic, groupId |
|
Requêtes de réception de messages limitées par minute |
ThrottledReceiveRequestsPerGidTopic |
count/m |
userId, instanceId, topic, groupId |
|
Messages morts générés par minute |
SendDLQMessageCountPerGidTopic |
count/m |
userId, instanceId, groupId, topic |
Afficher les métriques
Connectez-vous à la console ApsaraMQ for RocketMQ. Dans le volet de navigation de gauche, cliquez sur Instances.
Dans la barre de navigation supérieure, sélectionnez une région, telle que China (Hangzhou). Sur la page Instances, cliquez sur le nom de l'instance à gérer.
Dans le volet de navigation de gauche, cliquez sur Monitoring and Alerting.
Sur la page Monitoring and Alerting, sélectionnez un type de ressource dans la liste déroulante Resource Type, puis définissez la plage de temps de la requête. La page affiche automatiquement les graphiques de métriques correspondant au type de ressource sélectionné.
Créer une règle d'alerte
Sur la page Instances, cliquez sur le nom de l'instance à gérer.
Dans le volet de navigation de gauche, cliquez sur Monitoring and Alerting.
Dans le coin supérieur droit de la page Monitoring and Alerting, cliquez sur Create Alert Rule. Le panneau Create Alert Rule s'ouvre dans la console CloudMonitor.
Configurez la règle d'alerte et les paramètres de notification, puis cliquez sur OK. Pour la description des paramètres, consultez la rubrique Créer une règle d'alerte.
Voir aussi
Configurer la fonctionnalité de surveillance et d'alerte pour l'avertissement des risques : Découvrez comment configurer des règles d'alerte pour les métriques clés et les métriques métier.