És possible descobrir unitats de systemd (serveis, per defecte) amb Zabbix.
### Clau d'element
L'element a emprar a la regla de descoberta és
Aquesta clau d'element només s'admet amb l'agent Zabbix 2.
Aquest element retorna un JSON amb la informació de les unitats systemd, per 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.SERVICETYPE}": "simple"
}, {
"{#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"
}]
És possible també descobrir unitats systemd desactivades. En aquest cas, es retornen tres macros al JSON resultant:
Per crear elements i triggers a partir de prototips per a unitats de sistema desactivades, assegureu-vos d'ajustar (o esborrar) els filtres LLD que no permeten {#UNIT.ACTIVESTATE} i {#UNIT.UNITFILESTATE}.
Les macros següents s'admeten per emprar-les al filtre de regla de descoberta i elements prototip, triggers i gràfics:
Macro | Descripció |
---|---|
{#UNIT.NAME} | Nom de la unitat principal. |
{#UNIT.DESCRIPTION} | Descripció llegible. |
{#UNIT.LOADSTATE} | Estat de càrrega (és a dir, si el fitxer de la unitat s'ha carregat correctament) |
{#UNIT.ACTIVESTATE} | Estat actiu (és a dir, si la unitat és engegada o no) |
{#UNIT.SUBSTATE} | Subestat (una versió més fina de l'estat actiu que és específica del tipus d'unitat, quin estat actiu no ho és) |
{#UNIT.FOLLOWED} | Unitat que segueix en el seu estat aquesta unitat, si n'hi ha; en cas contrari, una cadena buida. |
{#UNIT.PATH} | Camí de l'objecte de la unitat. |
{#UNIT.JOBID} | ID de treball numèric si hi ha un treball a la cua per a la unitat de treball; 0 en cas contrari. |
{#UNIT.JOBTYPE} | Tipus de treball. |
{#UNIT.JOBPATH} | Camí de l'objecte de treball. |
{#UNIT.UNITFILESTATE} | L'estat d'instal·lació del fitxer de la unitat. |
{#UNIT.SERVICETYPE} | Tipus de la unitat de servei (com ara simple , forking , oneshot , idle , etc.). Aquesta macro es retorna només si la unitat és un servei. |
Els prototips d'elements que es poden crear basant-se en la descoberta de serveis de systemd inclouen, per exemple:
{#UNIT.DESCRIPTION} active stat info
; Clau d'element: systemd.unit.info["{#UNIT.NAME}"]
{#UNIT.DESCRIPTION} active stat info
; Clau d'element: systemd.unit.info["{#UNIT.NAME}",LoadState]