Systemd
Rapport de recherche Datadog : Bilan sur l'adoption de l'informatique sans serveur Rapport : Bilan sur l'adoption de l'informatique sans serveur

Systemd

Agent Check Check de l'Agent

Supported OS: Linux

Présentation

Ce check permet de surveiller Systemd ainsi que les unités qu’il gère avec l’Agent Datadog.

  • Surveillez l’état et la santé de votre Systemd.
  • Surveillez les unités, les services et les sockets gérés par Systemd.

Implémentation

Installation

Host

Le check Systemd est inclus avec le paquet de l’Agent Datadog. Vous n’avez donc rien à installer sur votre serveur.

Environnement conteneurisé

Pour les environnements conteneurisés, montez le dossier /run/systemd/, qui contient le socket /run/systemd/private nécessaire pour récupérer les données Systemd. Exemple :

docker run -d -v /var/run/docker.sock:/var/run/docker.sock:ro \
              -v /proc/:/host/proc/:ro \
              -v /sys/fs/cgroup/:/host/sys/fs/cgroup/:ro \
              -v /run/systemd/:/host/run/systemd/:ro \
              -e DD_API_KEY=<VOTRE_CLÉ_API> \
              datadog/agent:latest

Configuration

  1. Modifiez le fichier systemd.d/conf.yaml dans le dossier conf.d/ à la racine du répertoire de configuration de votre Agent pour commencer à recueillir vos données de performance Systemd. Consultez le fichier d’exemple systemd.d/conf.yaml pour découvrir toutes les options de configuration disponibles.

  2. Redémarrez l’Agent.

Validation

Lancez la sous-commande status de l’Agent et cherchez systemd dans la section Checks.

Données collectées

Métriques

systemd.units_total
(gauge)
The total number of units
Shown as unit
systemd.units_loaded_count
(gauge)
The number of loaded units
Shown as unit
systemd.units_monitored_count
(gauge)
The number of monitored units
Shown as unit
systemd.units_by_state
(gauge)
Sum by state to count units
Shown as unit
systemd.unit.monitored
(gauge)
Indicates that the unit is monitored (the value is always 1)
systemd.unit.active
(gauge)
Whether the unit is currently in active state
systemd.unit.loaded
(gauge)
Whether the unit is currently in loaded state
systemd.unit.uptime
(gauge)
The unit uptime in seconds since it's activation
Shown as second
systemd.service.cpu_time_consumed
(gauge)
The overall cpu consumed by the service in nanoseconds (CPUUsageNSec), requires Systemd configuration CPUAccounting to be enabled and Systemd version >= 220
Shown as nanosecond
systemd.service.memory_usage
(gauge)
The memory currently used by the service in bytes (MemoryCurrent), requires Systemd configuration MemoryAccounting to be enabled
Shown as byte
systemd.service.task_count
(gauge)
The current number of tasks in the service (TasksCurrent), requires Systemd configuration TasksAccounting to be enabled
Shown as task
systemd.service.restart_count
(gauge)
The number of times the service has been restarted due to `Restart=` (NRestarts), requires Systemd version >= 235
Shown as time
systemd.socket.connection_accepted_count
(gauge)
The number of accepted socket connections (NAccepted)
Shown as connection
systemd.socket.connection_count
(gauge)
The current number of socket connections (NConnections)
Shown as connection
systemd.socket.connection_refused_count
(gauge)
The total number of refused socket connections (NRefused), requires Systemd version >= 239
Shown as connection

Certaines métriques sont uniquement transmises si leur configuration respective est activée :

  • systemd.service.cpu_time_consumed nécessite l’activation de la configuration CPUAccounting de Systemd.
  • systemd.service.memory_usage nécessite l’activation de la configuration MemoryAccounting de Systemd.
  • systemd.service.task_count nécessite l’activation de la configuration TasksAccounting de Systemd.

Certaines métriques ne sont disponibles qu’à partir d’une version spécifique de Systemd :

  • systemd.service.cpu_time_consumed nécessite l’installation de Systemd v220.
  • systemd.service.restart_count nécessite l’installation de Systemd v235.
  • systemd.socket.connection_refused_count nécessite l’installation de Systemd v239.

Checks de service

systemd.can_connect :
Renvoie OK si Systemd est accessible. Si ce n’est pas le cas, renvoie CRITICAL.

systemd.system.state :
Renvoie OK l’état du système est running, renvoie CRITICAL si l’état est degraded, maintenance ou stopping, ou renvoie UNKNOWN pour un état initializing, starting ou autre.

systemd.unit.state :
Renvoie OK si l’état actif de l’unité est active, renvoie CRITICAL si l’état est inactive, deactivating ou failed, ou renvoie UNKNOWN pour un état activating ou autre.

Événements

Le check Systemd n’inclut aucun événement.

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog.