Tous les produits
Search
Centre de documentation

ApsaraMQ for Kafka:Pourquoi l'alerte et la console affichent-elles des accumulations de messages différentes ?

Dernière mise à jour :Aug 11, 2026

Cette rubrique explique pourquoi l'alerte d'accumulation de messages et l'accumulation affichée dans la console peuvent différer.

Symptômes

Vous pouvez constater un écart entre l'alerte d'accumulation de messages et l'accumulation affichée dans la console.

Par exemple, sur l'onglet Prometheus monitoring de la page des détails du groupe de consommateurs, la carte Total Message Accumulation en haut de la page affiche une valeur de 36. Toutefois, le graphique linéaire Prometheus situé plus bas indique que l'accumulation de messages a soudainement atteint environ 300 à un moment précis avant de se stabiliser. Les deux valeurs présentent une différence significative.

Causes possibles

Cause 1

L'accumulation de messages pour une partition se calcule ainsi : partition maximum offset - partition consumer offset. L'accumulation totale correspond à la somme des accumulations de messages sur toutes les partitions.

Prenons l'exemple d'une instance comportant m groupes de consommateurs et n topics, où chaque groupe de consommateurs s'abonne à tous les topics. Vous pouvez calculer l'accumulation de messages pour un groupe de consommateurs de deux manières :

  • Méthode de requête standard

    Cette méthode envoie une requête RPC pour obtenir les offsets de consommation du groupe de consommateurs, puis une autre requête RPC pour récupérer les offsets maximums des partitions des topics abonnés. Cette approche génère au moins m * n * number of broker nodes requêtes RPC, ce qui impacte considérablement l'efficacité de la surveillance.

  • Méthode de requête par lot

    Cette méthode récupère d'abord tous les offsets de consommation pour l'ensemble des groupes de consommateurs en un seul lot. Ensuite, une seconde requête par lot permet d'obtenir les offsets maximums pour toutes les partitions abonnées. Cette approche réduit le nombre de requêtes RPC de m * n * number of broker nodes au simple nombre de nœuds broker. Toutefois, en raison de la nature du traitement par lot, un délai survient entre la récupération des offsets de consommation et celle des offsets maximums. Pendant ce délai, l'offset maximum d'une partition peut continuer à augmenter à mesure que de nouveaux messages sont produits. Ce décalage temporel entraîne un calcul imprécis de l'accumulation de messages.

La valeur Total Message Accumulation affichée sur la page Group Details de la console est obtenue via des requêtes RPC distinctes pour récupérer l'offset de consommation et l'offset maximum de la partition. Comme l'intervalle de temps entre ces deux requêtes RPC est faible, l'écart par rapport à l'accumulation réelle de messages reste minime. En revanche, l'accumulation utilisée pour la surveillance est récupérée à l'aide de requêtes par lot. Cette méthode crée un décalage temporel entre le moment où l'offset de consommation est récupéré et celui où l'offset maximum de la partition est obtenu, ce qui provoque inévitablement un écart dans le calcul de l'accumulation. C'est pourquoi la valeur de l'alerte d'accumulation de messages peut ne pas correspondre à celle affichée dans la console.

Cause 2

Lorsque la consommation est lente et que l'utilisation du disque est élevée, l'instance peut supprimer des messages avant qu'ils ne soient consommés. Cela peut entraîner un offset de consommation inférieur à l'offset minimum pour une partition. Apache Kafka open source et Message Queue for Apache Kafka gèrent cette situation différemment :

  • Apache Kafka open source

    Par défaut, il ignore cette accumulation de messages lors du calcul des totaux.

  • Message Queue for Apache Kafka

    Afin de vous aider à détecter plus rapidement les offsets de consommation anormaux dans les partitions, la politique d'alerte de surveillance les signale comme des alertes d'accumulation de messages, vous permettant ainsi de les traiter selon vos besoins.

Pour vous aider à distinguer les partitions anormales des partitions normales dans la console, Message Queue for Apache Kafka exclut l'accumulation de messages des partitions anormales du total Total Message Accumulation affiché sur la page Group Details . Par conséquent, l'accumulation de messages signalée par le système de surveillance est bien supérieure à celle affichée dans la console. Cela entraîne un écart entre l'alerte d'accumulation de messages et l'accumulation visible dans la console.

Remarque
  • Si vous décidez d'ignorer cette alerte, réinitialisez l'offset de consommation à 0 dans la console. Après la réinitialisation de l'offset, Message Queue for Apache Kafka ne déclenchera plus d'alertes d'accumulation de messages pour le topic concerné au sein de ce groupe de consommateurs. Pour plus d'informations, consultez la section réinitialisation des offsets de consommation.

  • Si vous devez désactiver temporairement cette fonctionnalité, veuillez soumettre un ticket.

Les exemples suivants illustrent ce comportement :

  • L'accumulation totale de messages dans la console ne correspond pas à celle de l'alerte.

    Sur la page des détails du groupe de consommateurs Kafka, sélectionnez l'onglet Prometheus monitoring. La valeur Total Message Accumulation affichée en haut indique 13 568, tandis que le graphique linéaire Total Message Accumulation ci-dessous montre que l'accumulation est restée stable au cours des 30 dernières minutes.

  • L'accumulation totale dans la console exclut les accumulations anormales.

    Sur la page des détails du groupe de consommateurs, la valeur Total Message Accumulation est affichée dans une carte en haut de la page. Dans l'onglet Consumption Status, un tableau présente l'accumulation pour chaque topic dans la colonne Accumulated Messages .

  • Les détails de consommation d'un topic révèlent des partitions avec une accumulation anormale, où l'offset de consommation est inférieur à l'offset minimum.

    Par exemple, la partition 0 affiche un Consumer Offset de 1, mais son Min Offset est de 97 413 417 052. La valeur Accumulated Messages est indiquée comme -- et n'est pas incluse dans le total.