This is a translation of the original English documentation page. Help us make it better.

7 Découverte des services systemd

Aperçu

Il est possible de découvrir des unités systemd (services, par défaut) avec Zabbix.

### Clé d'élément

L'élément à utiliser dans la règle de découverte est

 systemd.unit.discovery

Cette clé d'élément n'est prise en charge que dans l'agent Zabbix 2.

Cet élément renvoie un JSON avec des informations sur les unités systemd, par exemple :

[{
           "{#UNIT.NAME}": "mysqld.service",
           "{#UNIT.DESCRIPTION}": "MySQL Server",
           "{#UNIT.LOADSTATE}": "loaded",
           "{#UNIT.ACTIVESTATE}": "active",
           "{#UNIT.SUBSTATE}": "running",
           "{#UNIT.FOLLOWED}": "",
           "{#UNIT.PATH}": "/org/freedesktop/systemd1/unit/mysqld_2eservice",
           "{#UNIT.JOBID}": 0,
           "{#UNIT.JOBTYPE}": "",
           "{#UNIT.JOBPATH}": "/",
           "{#UNIT.UNITFILESTATE}": "enabled"
       }, {
           "{#UNIT.NAME}": "systemd-journald.socket",
           "{#UNIT.DESCRIPTION}": "Journal Socket",
           "{#UNIT.LOADSTATE}": "loaded",
           "{#UNIT.ACTIVESTATE}": "active",
           "{#UNIT.SUBSTATE}": "running",
           "{#UNIT.FOLLOWED}": "",
           "{#UNIT.PATH}": "/org/freedesktop/systemd1/unit/systemd_2djournald_2esocket",
           "{#UNIT.JOBID}": 0,
           "{#UNIT.JOBTYPE}": "",
           "{#UNIT.JOBPATH}": "/",
           "{#UNIT.UNITFILESTATE}": "enabled"
       }]
Découverte des unités systemd désactivées

Depuis Zabbix 6.0.1, il est également possible de découvrir les unités systemd désactivées. Dans ce cas, trois macros sont renvoyées dans le JSON résultant :

  • {#UNIT.PATH}
  • {#UNIT.ACTIVESTATE}
  • {#UNIT.UNITFILESTATE}.

Pour que des éléments et des déclencheurs soient créés à partir de prototypes pour les unités systemd désactivées, assurez-vous d'ajuster (ou de supprimer) les filtres LLD interdisant pour {#UNIT.ACTIVESTATE} et {#UNIT.UNITFILESTATE}.

Macros prises en charge

Les macros suivantes sont prises en charge pour une utilisation dans le filtre de règle de découverte et les prototypes d'éléments, de déclencheurs et de graphiques :

Macro Description
{#UNIT.NAME} Nom de l'unité principale.
{#UNIT.DESCRIPTION} Description lisible par l'homme.
{#UNIT.LOADSTATE} État de chargement (c'est-à-dire si le fichier d'unité a été chargé avec succès)
{#UNIT.ACTIVESTATE} État actif (c'est-à-dire si l'unité est actuellement démarrée ou non)
{#UNIT.SUBSTATE} Sous-état (une version plus fine de l'état actif qui est spécifique au type d'unité, ce que l'état actif n'est pas)
{#UNIT.FOLLOWED} Unité qui est suivie dans son état par cette unité, s'il y en a ; sinon une chaîne vide.
{#UNIT.PATH} Chemin de l'objet unité.
{#UNIT.JOBID} ID de travail numérique s'il y a un travail en file d'attente pour l'unité de travail ; 0 sinon.
{#UNIT.JOBTYPE} Type de tâche.
{#UNIT.JOBPATH} Chemin de l'objet du travail.
{#UNIT.UNITFILESTATE} L'état d'installation du fichier d'unité.

Prototypes d'élément

Les prototypes d'élément pouvant être créés sur la base de la découverte de service systemd incluent, par exemple :

  • Nom de l'élément : {#UNIT.DESCRIPTION}; Clé de l'élément : systemd.unit.info["{#UNIT.NAME}"]
  • Nom de l'élément : {#UNIT.DESCRIPTION}; Clé de l'élément : systemd.unit.info["{#UNIT.NAME}",LoadState]

Les éléments agent systemd.unit.info sont pris en charge depuis Zabbix 4.4.