Surveillance de RabbitMQ

Vous pouvez surveiller les instances RabbitMQ à l'aide du capteur RabbitMQ Instana. Le capteur « RabbitMQ » est automatiquement déployé et installé une fois que vous avez installé l'agent « Instana ». Vous pouvez consulter les indicateurs liés aux instances d' RabbitMQ s dans l'interface utilisateur d' Instana.

Informations de support

Pour vous assurer que le capteur d' RabbitMQ s est compatible avec votre configuration actuelle, consultez les sections d'informations d'assistance suivantes :

Versions prises en charge et politique d'assistance

Le capteur prend en charge les versions d' RabbitMQ allant de la version 3.6.x à la version 4.0.

Le tableau suivant présente la dernière version prise en charge et la politique d'assistance :

Technologie Politique de support Dernière version technologique Dernière version prise en charge
RabbitMQ 45 jours 4.3.2 4.3.2

Pour plus d'informations sur la politique d'assistance, consultez la section « Stratégie d'assistance pour les capteurs ».

Configuration

Les configurations suivantes sont nécessaires pour activer la surveillance par le capteur « RabbitMQ » :

Activation du module complémentaire de gestion d' RabbitMQ

Pour collecter les métriques de l'instance d' RabbitMQ, activez le plug-in de gestion d' RabbitMQ. Pour activer le module complémentaire « Gestion de l' RabbitMQ », exécutez la commande suivante :

rabbitmq-plugins enable rabbitmq_management
 

Configuration de l'authentification des capteurs

Si l'interface d'administration d' RabbitMQ. nécessite une authentification, vous pouvez configurer le capteur pour qu'il utilise ces identifiants en les ajoutant au fichier de <agent_install_dir>/etc/instana/configuration.yaml configuration de l'agent, comme le montre l'exemple suivant :

com.instana.plugin.rabbitmq:
  user: 'guest'
  password: 'guest'
 

Fréquence d'interrogation personnalisée

Vous pouvez définir la fréquence à laquelle l' Instana interroge RabbitMQ pour collecter des données et des métriques en utilisant %poll_rate; le paramètre dans le fichier d' configuration.yaml de l'agent.
com.instana.plugin.rabbitmq:
  poll_rate: 5 # values are in seconds. Default value is 5 second.

Configuration du chemin de contexte

Si l'accès à l'interface d'administration d' RabbitMQ se se fait via un chemin d'accès autre que le répertoire racine, vous pouvez configurer le contextPath paramètre. Cette configuration permet au capteur de générer correctement des URL de type API lorsque l'interface d'administration est accessible via un chemin autre que le chemin racine (par exemple, https://your-server:15672/rabbitmq/ ) plutôt que directement via le chemin racine ( https://your-server:15672/ ).

Pour configurer le chemin de contexte, ajoutez le contextPath paramètre au fichier de configuration de l'agent comme suit :

com.instana.plugin.rabbitmq:
  user: 'guest'
  password: 'guest'
  contextPath: '/rabbitmq' # Specify if RabbitMQ Management API is accessed through a non-root path
 

Configuration personnalisée des ports

Par défaut, le plug-in de gestion d' RabbitMQ s écoute sur le port 15672 pour les requêtes HTTP. Vous pouvez personnaliser ce port afin de répondre à des besoins spécifiques. Pour configurer l'interface d'administration afin qu'elle utilise un autre port pour l'accès via HTTP, modifiez le rabbitmq.conf fichier.

Configuration d'un port d' HTTP personnalisé

Pour configurer un port personnalisé pour l'accès à HTTP, ajoutez le management.tcp.port paramètre au rabbitmq.conf fichier.

Configuration d'un port d' HTTPS personnalisé

Pour activer l'accès via HTTPS et définir un port personnalisé ainsi que les paramètres SSL / TLS, ajoutez les paramètres management.ssl.portmanagement.ssl.cacertfile et au rabbitmq.conf fichier.

Remarque : vous devez indiquer les chemins d'accès à un certificat et à un fichier de clé valides. Cette configuration permet un accès sécurisé à l'interface utilisateur de gestion d' RabbitMQ via HTTPS.

Affichage des mesures

Pour afficher les métriques, procédez comme suit:

  1. Dans la barre latérale de l'interface utilisateur d' Instana, sélectionnez « Infrastructure ».
  2. Cliquez sur un hôte surveillé spécifique. Vous pouvez consulter le tableau de bord de l'hôte, qui présente toutes les métriques collectées et les processus surveillés.

Métriques du noeud RabbitMQ

Les indicateurs suivants sont collectés à partir de chaque nœud RabbitMQ :

Données de configuration

Les données de configuration suivantes sont collectées à partir du nœud RabbitMQ :

  • Ports
  • Version
  • Version d'Erlang
  • Nom du noeud
  • Noeuds (nombre)
  • Files d'attente (nombre)
  • Canaux (nombre)

Métriques de performance

Le capteur « RabbitMQ » collecte des métriques toutes les 5 secondes, ce qui correspond à la fréquence d'échantillonnage par défaut du serveur « RabbitMQ ».

La gestion de l' RabbitMQ e intègre des politiques de conservation des données par défaut. Les données globales sont conservées avec une résolution de 5 secondes pendant 10 minutes et 5 secondes, avec une résolution d'une minute pendant 1 heure et 1 minute, et avec une résolution de 10 minutes pendant environ 8 heures. Les données de base sont conservées avec une résolution de 5 secondes pendant 1 minute et 5 secondes, et avec une résolution d'une minute pendant 1 heure. Les données détaillées sont conservées avec une résolution de 10 secondes pendant 10 secondes. Ces trois politiques sont obligatoires et nécessitent au moins une paire de rétention, composée de MaxAgeInSeconds et SampleEveryNSeconds. Pour plus d'informations, consultez la documentation d' RabbitMQ.

Messages

Les indicateurs de messages suivants sont collectés à partir du nœud « RabbitMQ » :

Métrique Description
Publié Nombre de messages publiés (par 5 secondes).
Distribué Nombre de messages distribués (par 5 secondes).
Accepté Nombre de messages distribués aux clients et pris en compte (par 5 secondes).
Statut des messages

Les indicateurs d'état des messages suivants sont collectés à partir du nœud « RabbitMQ » :

Métrique Description
Prêt Nombre de messages prêts à être distribués aux clients.
Sans accusé de réception Nombre de messages distribués aux clients, mais pas encore pris en compte.
Total Nombre total de messages dans la file d'attente.
Taux à l'état Prêt Nombre de messages par seconde qui sont prêts à être distribués aux clients.
Taux sans accusé de réception Nombre de messages par seconde qui sont distribués aux clients mais qui n'ont pas encore été pris en compte.
Taux total Nombre total de messages par seconde qui se trouvent dans la file d'attente.
Présentation

Les indicateurs généraux suivants sont collectés à partir du nœud « RabbitMQ » :

Métrique Description
Consommateurs Nombre de consommateurs.
Connexions Nombre de connexions en cours au serveur RabbitMQ .
Noeuds (métriques par noeud)

Les indicateurs suivants sont collectés pour chaque nœud de l' RabbitMQ :

Métrique Description
Descripteurs de fichier utilisés Nombre de descripteurs de fichier en cours d'utilisation.
Nombre total de descripteurs de fichier Nombre de tous les descripteurs de fichier disponibles.
Processus Erlang utilisés Nombre de processus Erlang en cours d'utilisation.
Nombre maximal de processus Erlang Nombre maximal de processus Erlang disponibles.
Mémoire utilisée Quantité de mémoire utilisée.
Limite de mémoire Mémoire maximale disponible.
Seuil d'alarme de disque Quantité d'espace disque inutilisé qui doit être conservée pour éviter le déclenchement d'une alarme.
Espace disque disponible Quantité d'espace disque inutilisé.
Sockets utilisés Nombre de descripteurs de fichier utilisés comme sockets.
Nombre total de sockets Nombre de descripteurs de fichier pouvant être utilisés comme sockets.
Files d'attente (métriques par file d'attente)

Par défaut, la surveillance des files d'attente n'est pas activée. Pour activer la surveillance approfondie des métriques, indiquez à l'agent les files d'attente que vous souhaitez surveiller (1000 maximum). Vous pouvez configurer des files d'attente pour la surveillance dans le fichier de configuration de l'agent <agent_install_dir>/etc/instana/configuration.yaml:

com.instana.plugin.rabbitmq:
  queuesRegex: '.*' # Regex pattern used for matching monitored queues
  queuesBasePath: '/api/queues/' # Configure the queues api base path
  monitorQueues:
    - queue: 'instana1' # name of the queue
      vhost: '/' # name of the vhost, default is '/'
    - queue: 'stan1' # name of the queue
      vhost: '/' # name of the vhost, default is '/'
 
  • queuesRegex: modèle d'expression régulière facultatif utilisé pour filtrer les files d'attente par nom. Vous pouvez l'utiliser avec la configuration monitorQueues .
  • queuesBasePath: Chemin d'accès de base facultatif pour l' API des files d'attente. Par défaut, le chemin d'accès est /api/queues/.

Les indicateurs suivants sont collectés pour chaque file d'attente :

Métrique Description
Messages prêts Nombre de messages prêts à être distribués aux clients.
Messages sans accusé de réception Nombre de messages distribués aux clients, mais pas encore pris en compte.
Nombre total de messages Nombre de tous les messages qui se trouvent dans la file d'attente.
Consommateurs Nombre de destinataires qui utilisent des messages de la file d'attente.

Signatures d'intégrité

Pour chaque détecteur, une base de connaissances organisée des signatures de santé qui sont évaluées en continu par rapport aux métriques entrantes et qui sont utilisées pour signaler des problèmes ou des incidents qui dépendent de l'impact de l'utilisateur.

Les événements intégrés déclenchent des problèmes ou des incidents en fonction de signatures d'état de santé défaillantes sur des entités, tandis que les événements personnalisés déclenchent des problèmes ou des incidents en fonction des seuils d'une métrique spécifique de n'importe quelle entité sélectionnée.

Pour plus d'informations sur les événements générés pour le cluster RabbitMQ , le serveur RabbitMQ , les noeuds RabbitMQ et les files d'attente RabbitMQ , voir la référence des événements intégrés.

Métriques du cluster RabbitMQ

Les indicateurs suivants sont collectés à partir de chaque cluster RabbitMQ :

Données de configuration

Les données de configuration suivantes sont collectées à partir du cluster RabbitMQ :

  • Nom du cluster
  • Noeuds (nombre)

Métriques de performance

Les indicateurs de performance suivants sont collectés à partir du cluster RabbitMQ :

  • Noeuds actifs (nombre)
  • Noeuds arrêtés (nombre)
  • CONNEXIONS (NOMBRE)
Messages généraux

Les indicateurs de messages suivants sont collectés à partir du cluster RabbitMQ :

Métrique Description
Nombre global publié Nombre de messages publiés sur l'ensemble du cluster (toutes les 5 secondes).
Nombre global distribué Nombre de messages transmis au sein du cluster (toutes les 5 secondes).
Nombre global avec accusé de réception Nombre de messages remis aux clients et confirmés à l'échelle du cluster (toutes les 5 secondes).
État général des messages

Les indicateurs de statut des messages suivants sont collectés à partir du cluster RabbitMQ :

Métrique Description
Prêt globalement Nombre de messages prêts à être transmis aux clients au sein du cluster.
Non reconnu globalement Nombre de messages qui ont été remis aux clients mais qui n'ont pas encore été confirmés au sein du cluster.
Total général Nombre total de messages présents dans toutes les files d'attente du cluster.
Taux global de disponibilité Nombre de messages par seconde prêts à être transmis aux clients au sein du cluster.
Taux global sans accusé de réception Nombre de messages par seconde qui ont été transmis aux clients, mais qui n'ont pas encore été confirmés au sein du cluster.
Taux total global Nombre total de messages par seconde présents dans toutes les files d'attente du cluster.
Présentation

Les indicateurs généraux suivants sont collectés à partir du cluster RabbitMQ :

Métrique Description
Consommateurs Nombre de consommateurs dans le cluster.
Connexions Nombre de connexions en cours au cluster RabbitMQ .
Nœuds de cluster

Les métriques de nœud suivantes sont collectées à partir du cluster RabbitMQ :

Métrique Description
Version Version du noeud RabbitMQ .
Descripteurs de fichier utilisés Nombre de descripteurs de fichier en cours d'utilisation.
Mémoire utilisée Quantité de mémoire utilisée.
Sockets utilisés Nombre de descripteurs de fichier utilisés comme sockets.
Processus Erlang Nombre de processus Erlang en cours d'utilisation.
Disque disponible Quantité d'espace disque inutilisé.
Seuil d'alarme de disque Quantité d'espace disque inutilisé qui doit être conservée pour éviter le déclenchement d'une alarme.