Présentation
Ce check surveille la disponibilité, le statut et le nombre de processus s’exécutant sous Supervisor.
Configuration
Installation
Le check Supervisor est inclus dans le paquet de l’Agent Datadog : vous n’avez donc rien d’autre à installer sur les serveurs qui exécutent Supervisor.
Configuration
Préparer supervisord
L’Agent peut recueillir des données à partir de Supervisor via un serveur HTTP ou un socket UNIX. L’Agent recueille les mêmes données quelle que soit la méthode de collecte que vous configurez.
Serveur HTTP
Ajoutez un bloc comme celui-ci au fichier de configuration principal de Supervisor (/etc/supervisor.conf
) :
[inet_http_server]
port=localhost:9001
;username=user # facultatif
;password=pass # facultatif
Socket UNIX
Ajoutez des blocs comme ceux-ci au fichier /etc/supervisor.conf
(s’ils ne sont pas déjà présents) :
[supervisorctl]
serverurl=unix:///var/run/supervisor.sock
[unix_http_server]
file=/var/run/supervisor.sock
chmod=777
chown=nobody:nogroup
;username=user # facultatif
;password=pass # facultatif
Si Supervisor est exécuté en mode root, assurez-vous que chmod
ou chown
est défini de façon à ce que les utilisateurs non root comme dd-agent
puissent lire le socket.
Rechargez supervisord
.
Host
Pour configurer ce check lorsque l’Agent est exécuté sur un host :
Modifiez le fichier supervisord.d/conf.yaml
dans le dossier conf.d/
à la racine du répertoire de configuration de votre Agent. Consultez le fichier d’exemple supervisord.d/conf.yaml pour découvrir toutes les options de configuration disponibles :
init_config:
instances:
## Utilisé pour taguer les checks de service et les métriques, p. ex. supervisor_server:supervisord0
- name: supervisord0
host: localhost
port: 9001
## Pour effectuer la collecte à partir du socket
# - name: supervisord0
# socket: unix:///var/run/supervisor.sock
Utilisez les options proc_names
et/ou proc_regex
pour énumérer les processus pour lesquels vous souhaitez que l’Agent recueille des métriques et crée des checks de service. Si aucune de ces options n’est spécifiée, l’Agent suit tous les processus enfants de Supervisor. Si les deux options sont spécifiées, l’Agent suit les processus présents dans les deux listes. En d’autres termes, les deux options ne sont pas mutuellement exclusives.
Consultez un exemple de configuration du check pour obtenir les descriptions complètes des autres options du check.
Redémarrez l’Agent pour commencer à envoyer vos métriques Supervisord à Datadog.
Environnement conteneurisé
Consultez la documentation relative aux modèles d’intégration Autodiscovery pour découvrir comment appliquer les paramètres ci-dessous à un environnement conteneurisé.
Paramètre | Valeur |
---|
<NOM_INTÉGRATION> | supervisord |
<CONFIG_INIT> | vide ou {} |
<CONFIG_INSTANCE> | {"name":"<NOM_SERVEUR_SUPERVISORD>", "host":"%%host%%", "port":"9001", "user":"<UTILISATEUR>", "pass":"<MOTDEPASSE>"} |
Collecte de logs
La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml
:
Ajoutez ce bloc de configuration à votre fichier supervisord.d/conf.yaml
pour commencer à recueillir vos logs Supervisord :
logs:
- type: file
path: /path/to/my/directory/file.log
source: supervisord
Modifiez la valeur du paramètre path
et configurez-la pour votre environnement.
Consultez le fichier d’exemple supervisord.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
Redémarrez l’Agent.
Validation
Lancez la sous-commande status de l’Agent et cherchez supervisord
dans la section Checks.
Données collectées
Métriques
supervisord.process.count (gauge) | The number of supervisord monitored processes Shown as process |
supervisord.process.uptime (gauge) | The process uptime Shown as second |
Événements
Le check Supervisor n’inclut aucun événement.
Checks de service
supervisord.can_connect
Renvoie CRITICAL
si le check de l’Agent n’est pas capable de se connecter au daemon supervisor. Si ce n’est pas le cas, renvoie OK
.
Statuses: ok, critical
supervisord.process.status
Renvoie CRITICAL
si le processus n’est pas en cours d’exécution ou d’arrêt, renvoie UNKNOWN
si l’est en cours de démarrage ou d’un autre processus inconnu ou renvoie OK
pour les autres cas.
Statuses: ok, critical, unknown
Dépannage
Besoin d’aide ? Contactez l’assistance Datadog.
Pour aller plus loin