CloudWatch Métriques disponibles pour Amazon SQS - Amazon Simple Queue Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

CloudWatch Métriques disponibles pour Amazon SQS

Amazon SQS envoie les métriques suivantes à. CloudWatch

Note

Pour certaines métriques, le résultat est approximatif en raison de l'architecture distribuée d'Amazon SQS. Dans la plupart des cas, le nombre devrait être proche du nombre réel de messages dans la file d'attente.

Métriques Amazon SQS

Amazon SQS publie automatiquement les métriques opérationnelles sur Amazon CloudWatch sous l'AWS/SQSespace de noms. Ces indicateurs vous aident à surveiller l'état et les performances des files d'attente. En raison de la nature distribuée de SQS, de nombreuses valeurs sont approximatives, mais suffisamment précises pour la plupart des décisions opérationnelles.

Note
  • Toutes les métriques émettent des valeurs non négatives uniquement lorsque la file d'attente est active.

  • Certaines métriques (telles queSentMessageSize) ne sont pas émises tant qu'au moins un message n'est envoyé.

Métrique Description Unités Signaler un comportement Remarques clés
ApproximateAgeOfOldestMessage L'âge du plus vieux message non traité de la file d'attente.

Secondes

Signalé si la file d'attente contient au moins un message actif.
  • Pour les files d'attente standard, si un message est reçu trois fois ou plus et qu'il n'est pas supprimé, SQS le déplace en fin de file d'attente. La métrique reflète ensuite l'âge du message suivant qui n'a pas dépassé le seuil de réception. Cette réorganisation se produit même lorsqu'une politique de redrive est en place.

  • Les messages contenant des pilules empoisonnées (ceux reçus à plusieurs reprises mais jamais supprimés) sont exclus de cette métrique jusqu'à ce qu'ils soient traités avec succès.

  • Lorsqu'un message est déplacé vers une DLQ après avoir dépassé lemaxReceiveCount, l'âge est réinitialisé. Dans ce cas, la métrique du DLQ reflète l'heure à laquelle le message a été déplacé, et non la date à laquelle il a été initialement envoyé.

  • Les files d'attente FIFO ne réorganisent pas les messages pour préserver l'ordre. Un message défaillant bloque son groupe de messages jusqu'à ce qu'il soit supprimé ou qu'il expire. Si un DLQ est configuré, le message y est envoyé une fois le seuil de réception atteint.

ApproximateNumberOfGroupsWithInflightMessages Pour FIFO uniquement. Le nombre de groupes de messages contenant un ou plusieurs messages en cours de vol.

Nombre

Signalé si la file d'attente FIFO est active.
  • Un message est considéré comme en cours de vol une fois qu'il a été reçu de la file d'attente par un consommateur, mais qu'il n'a pas encore été supprimé ou expiré.

  • Cette métrique vous aide à résoudre les problèmes et à optimiser le débit des files d'attente FIFO. Les valeurs élevées indiquent généralement une forte simultanéité.

  • Si la file d'attente a un important arriéré et que cette valeur reste faible, envisagez de redimensionner le nombre de clients ou d'augmenter le nombre de groupes de messages actifs.

  • Pour le débit et les limites en vol, voir. Quotas Amazon SQS

ApproximateNumberOfMessagesDelayed

Nombre de messages de la file d'attente qui sont retardés et ne peuvent pas être récupérés immédiatement.

Nombre

Signalé si des messages différés existent dans la file d'attente.
  • S'applique aux files d'attente configurées avec un délai par défaut et aux messages individuels envoyés avec un DelaySeconds paramètre.

  • Les messages différés restent cachés aux consommateurs jusqu'à l'expiration de leur délai, ce qui peut avoir une incidence sur le nombre de files d'attente ou le débit perçus.

ApproximateNumberOfMessagesNotVisible Le nombre de messages en vol qui ont été reçus mais qui n'ont pas encore été supprimés ou ont expiré.

Nombre

Signalé si des messages existent en vol.
  • Les messages entrent dans l'état de vol après avoir été envoyés à un consommateur via l'ReceiveMessageAPI.

  • Ces messages sont temporairement masqués aux autres consommateurs pendant la période d'expiration du délai de visibilité.

  • Utilisez cette métrique pour suivre les retards de traitement des messages ou les clients bloqués.

ApproximateNumberOfMessagesVisible Le nombre de messages actuellement disponibles pour la récupération et le traitement.

Nombre

Signalé si la file d'attente est active.
  • Reflète le retard de traitement actuel dans la file d'attente.

  • Il n'existe aucune limite stricte quant au nombre de messages pouvant être accumulés, mais ils sont soumis à la période de rétention configurée dans la file d'attente.

  • Une valeur constamment élevée peut indiquer des consommateurs sous-approvisionnés ou une logique de traitement bloquée.

NumberOfEmptyReceives¹ Le nombre d'appels d'ReceiveMessageAPI n'ayant renvoyé aucun message.

Nombre

Signalé lors des opérations de réception.
  • Cette métrique peut aider à identifier les inefficiences liées au comportement des utilisateurs lors des sondages ou la sous-utilisation des instances destinées aux consommateurs.

  • Des valeurs élevées peuvent apparaître lorsque la file d'attente est vide, lorsque le consommateur utilise des interrogations courtes ou lorsque les messages sont traités plus rapidement qu'ils ne sont produits.

  • Il ne s'agit pas d'un indicateur précis de l'état de la file d'attente. Il reflète le comportement côté service et peut inclure de nouvelles tentatives.

NumberOfDeduplicatedSentMessages Pour FIFO uniquement. Nombre de messages envoyés qui ont été dédupliqués et qui n'ont pas été ajoutés à la file d'attente.

Nombre

Signalé si MessageDeduplicationId des valeurs ou du contenu dupliqués sont détectés.
  • SQS déduplique les messages en fonction du hachage MessageDeduplicationId ou du hachage basé sur le contenu (si activé).

  • Une valeur élevée peut indiquer qu'un producteur envoie à plusieurs reprises le même message dans le délai de déduplication de 5 minutes.

  • Utilisez cette métrique pour résoudre les problèmes liés à la logique redondante du producteur ou pour vérifier que la déduplication fonctionne comme prévu.

NumberOfMessagesDeleted¹

Le nombre de messages supprimés de la file d'attente avec succès.

Nombre

Signalé pour chaque demande de suppression avec un identifiant de réception valide.
  • Cette métrique compte toutes les opérations de suppression réussies, même si le même message est supprimé plusieurs fois.

  • Les raisons les plus courantes justifiant higher-than-expected les valeurs sont les suivantes :

    • Suppressions multiples du même message à l'aide de différentes poignées de réception, une fois le délai de visibilité expiré et le message reçu à nouveau.

    • Suppressions dupliquées à l'aide du même descripteur de réception, qui renvoient toujours un statut de réussite et incrémentent la métrique.

  • Utilisez cet indicateur pour suivre le succès du traitement des messages, mais ne le considérez pas comme le nombre exact de messages uniques supprimés.

NumberOfMessagesReceived¹ Le nombre de messages renvoyés par l'ReceiveMessageAPI.

Nombre

Signalé lors des opérations de réception.
  • Cela inclut tous les messages renvoyés aux consommateurs, y compris ceux qui sont ensuite renvoyés dans la file d'attente en raison de l'expiration du délai de visibilité.

  • Un seul message peut être reçu plusieurs fois s'il n'est pas supprimé, ce qui peut entraîner un dépassement de cette métrique par rapport au nombre de messages envoyés.

  • Utilisez-le pour suivre l'activité des consommateurs, mais ne le considérez pas comme le nombre de messages uniques traités.

NumberOfMessagesSent¹ Le nombre de messages ajoutés avec succès à une file d'attente.

Nombre

Signalé pour chaque envoi manuel réussi.
  • Les appels manuels vers SendMessage ou vers un DLQ SendMessageBatch sont comptabilisés, y compris ceux qui ciblent directement un DLQ.

  • Les messages qui sont automatiquement déplacés vers une DLQ après avoir dépassé le ne maxReceiveCount sont pas inclus dans cette métrique.

  • Par conséquent, il NumberOfMessagesSent peut être inférieur à, NumberOfMessagesReceived en particulier si les politiques de redrive déplacent de nombreux messages vers les DLQs coulisses.

SentMessageSize¹

Taille des messages envoyés avec succès à la file d'attente.

Octets

Non émis tant qu'au moins un message n'a pas été envoyé.
  • Cette métrique n'apparaîtra pas dans la CloudWatch console tant que la file d'attente n'aura pas reçu son premier message.

  • Utilisez cette métrique pour suivre la taille de chaque message en octets. Cela est utile pour analyser les tendances de la charge utile ou estimer le coût du débit.

  • La taille maximale des messages pour SQS est de 1 MiB.

ApproximateNumberOfNoisyGroups

Nombre de groupes de messages considérés comme bruyants dans une file d'attente normale. Un groupe de messages bruyant représente un locataire voisin bruyant d'une file d'attente à locataires multiples.

Nombre

Une valeur non négative est signalée si la file d'attente est active.
  • Permet d'identifier les problèmes potentiels liés au bruit des voisins dans les environnements à locataires multiples en suivant les groupes de messages consommant des ressources disproportionnées.

  • Utilisez cette métrique pour définir des alarmes qui se déclenchent lorsque le nombre de groupes bruyants dépasse votre seuil acceptable, ce qui indique des problèmes potentiels d'équité des files d'attente.

ApproximateNumberOfMessagesVisibleInQuietGroups

Le nombre de messages visibles, à l'exception des messages provenant de groupes de messages bruyants.

Nombre

Une valeur non négative est signalée si la file d'attente est active.
  • Fournit une visibilité sur le backlog des files d'attente pour les groupes de messages à débit standard, à l'exception des messages provenant de voisins bruyants.

  • Permet d'identifier le véritable retard de traitement pour les groupes de messages classiques en filtrant l'impact des voisins bruyants.

ApproximateNumberOfMessagesNotVisibleInQuietGroups Le nombre de messages en cours, à l'exception des messages provenant de groupes de messages bruyants.

Nombre

Une valeur non négative est signalée si la file d'attente est active.
  • Suit les messages en cours de vol (en cours de traitement mais pas encore supprimés) provenant de groupes de messages bien gérés.

  • Utilisez cette métrique pour surveiller le débit de traitement des groupes de messages normaux et détecter les blocages de traitement qui ne sont pas causés par des voisins bruyants.

ApproximateNumberOfMessagesDelayedInQuietGroups Le nombre de messages, à l'exception des messages provenant de groupes de messages bruyants, qui sont retardés et ne peuvent pas être lus immédiatement. Les messages différés apparaissent lorsque la file d'attente est configurée comme file d'attente différée ou lorsqu'un message a été envoyé avec un paramètre de délai.

Nombre

Une valeur non négative est signalée si la file d'attente est active.
  • Permet de contrôler l'arriéré de messages différés provenant de groupes de messages présentant des modèles de débit normaux ou attendus (par opposition aux groupes à volume élevé ou bruyants)

  • Utile pour comprendre les futures exigences de traitement et planifier la capacité pour les charges de travail typiques.

ApproximateAgeOfOldestMessageInQuietGroups L'âge du plus vieux message non supprimé de la file d'attente, à l'exception des messages provenant de groupes de messages bruyants.

Secondes

Une valeur non négative est signalée si la file d'attente est active.
  • Utilisé pour surveiller la conformité aux SLA et détecter les goulots d'étranglement liés au traitement dans les groupes de messages présentant des modèles de débit normaux ou attendus (par opposition aux groupes de messages à volume élevé ou bruyants qui pourraient fausser la métrique).

  • Utilisez cette métrique pour définir des alarmes en cas d'expiration des délais de traitement des messages qui ignorent les messages vieillis artificiellement provenant de voisins bruyants.

¹ Ces mesures reflètent l'activité au niveau du système et peuvent inclure de nouvelles tentatives, des doublons ou des messages différés. N'utilisez pas de chiffres bruts pour estimer l'état de la file d'attente en temps réel sans tenir compte du comportement du cycle de vie des messages.

Files d'attente pour les lettres mortes () DLQs et statistiques CloudWatch

Lorsque vous travaillez avec DLQs, il est important de comprendre le comportement des métriques Amazon SQS :

  • NumberOfMessagesSent— Cette métrique se comporte différemment pour DLQs :

    • Envoi manuel — Les messages envoyés manuellement à un DLQ sont capturés par cette métrique.

    • Redrive automatique : les messages déplacés automatiquement vers un DLQ en raison d'échecs de traitement ne sont pas capturés par cette métrique. Par conséquent, les NumberOfMessagesReceived métriques NumberOfMessagesSent et peuvent présenter des divergences pour DLQs.

  • Mesure recommandée pour DLQs : pour surveiller l'état d'une DLQ, utilisez la ApproximateNumberOfMessagesVisible métrique. Cette métrique indique le nombre de messages actuellement disponibles pour traitement dans le DLQ.

Des files d'attente et CloudWatch des indicateurs équitables

Lorsque vous utilisez des files d'attente équitables, Amazon SQS émet les statistiques supplémentaires suivantes :

  • ApproximateNumberOfNoisyGroups

  • ApproximateNumberOfMessagesVisibleInQuietGroups

  • ApproximateNumberOfMessagesNotVisibleInQuietGroups

  • ApproximateNumberOfMessagesDelayedInQuietGroups

  • ApproximateAgeOfOldestMessageInQuietGroups

Note

Chaque QuietGroup métrique est un sous-ensemble de la Approximate métrique standard équivalente au niveau de la file d'attente, mais exclut les messages provenant de groupes voisins bruyants.

Groupes bruyants

Un groupe de messages bruyant représente un locataire voisin bruyant d'une file d'attente à locataires multiples.

Groupes calmes

Groupes de messages à l'exception des groupes bruyants.

Observation du comportement équitable des files d'attente SQS

Pour surveiller l'effet des files d'attente équitables sur Amazon SQS, vous pouvez comparer les Approximate..InQuietGroups statistiques avec les mesures standard au niveau des files d'attente. Lors d'une augmentation du trafic pour un locataire en particulier, les indicateurs généraux relatifs aux files d'attente peuvent révéler des arriérés croissants ou un vieillissement des messages. Toutefois, en examinant les groupes silencieux séparément, vous pouvez identifier que la plupart des groupes de messages ou des locataires peu bruyants ne sont pas concernés et fournir une estimation du nombre total de groupes de messages concernés.

Bien que ces nouveaux indicateurs fournissent une bonne vue d'ensemble du comportement des files d'attente équitables d'Amazon SQS, il peut être utile de comprendre quel locataire spécifique est à l'origine de la charge. Amazon CloudWatch Contributor Insights vous permet de consulter des statistiques concernant les principaux contributeurs, le nombre total de contributeurs uniques et leur utilisation. Cela est particulièrement utile dans les scénarios où vous avez affaire à des milliers de locataires qui, autrement, produiraient des données de cardinalité (et des coûts) élevés lors de l'émission de métriques traditionnelles.

Pour un exemple de configuration de surveillance pour les files d'attente régulières, consultez l'exemple sur GitHub.

Dimensions pour les métriques Amazon SQS

Les métriques Amazon SQS CloudWatch utilisent une seule dimension :. QueueName Toutes les données métriques sont regroupées et filtrées selon le nom de la file d'attente.

Conseils de surveillance

Surveillez efficacement le SQS à l'aide d'indicateurs et d' CloudWatch alarmes clés pour détecter les arriérés de files d'attente, optimiser les performances et respecter les limites de service.

  • Définissez CloudWatch des alarmes en fonction ApproximateNumberOfMessagesVisible de la croissance du backlog.

  • Surveillez NumberOfEmptyReceives pour ajuster la fréquence des sondages et réduire le coût des API.

  • ApproximateNumberOfGroupsWithInflightMessagesÀ utiliser dans les files d'attente FIFO pour diagnostiquer les limites de débit.

  • Passez en revue les quotas SQS pour comprendre les seuils métriques et les limites de service.