systemd pakalpojumu atklāšana
Pārskats
Ir iespējams ar Zabbix palīdzību atklāt systemd vienības (pēc noklusējuma — pakalpojumus).
Vienuma atslēga
Lai konfigurētu atklāšanas noteikumu, izmantojiet Zabbix aģenta vienuma atslēgu systemd.unit.discovery.
Šī vienuma atslēga tiek atbalstīta tikai Zabbix aģentā 2.
Šis vienums atgriež JSON ar informāciju par systemd vienībām, piemēram:
[{
"{#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"
}]
Atspējotu systemd vienību atklāšana
Ir iespējams atklāt arī atspējotas systemd vienības. Šādā gadījumā iegūtajā JSON tiek atgrieztas trīs makro:
{#UNIT.PATH}{#UNIT.ACTIVESTATE}{#UNIT.UNITFILESTATE}
Lai no prototipiem tiktu izveidoti vienumi un trigeri atspējotām systemd vienībām, pārliecinieties, ka ir pielāgoti (vai noņemti) aizliedzošie LLD filtri {#UNIT.ACTIVESTATE} un {#UNIT.UNITFILESTATE}.
Atbalstītie makrosi
Tālāk norādītie makrosi ir atbalstīti lietošanai atklāšanas noteikuma filtrā un vienumu, trigeru un grafiku prototipos:
| Macro | Description |
|---|---|
{#UNIT.NAME} |
Primārā vienības nosaukums. |
{#UNIT.DESCRIPTION} |
Cilvēkam saprotams apraksts. |
{#UNIT.LOADSTATE} |
Ielādes stāvoklis (t. i., vai vienības fails ir veiksmīgi ielādēts) |
{#UNIT.ACTIVESTATE} |
Aktīvais stāvoklis (t. i., vai vienība pašlaik ir palaista vai nav) |
{#UNIT.SUBSTATE} |
Apakšstāvoklis (detalizētāka aktīvā stāvokļa versija, kas ir specifiska vienības tipam un nav aktīvais stāvoklis) |
{#UNIT.FOLLOWED} |
Vienība, kuras stāvoklim šī vienība seko, ja tāda ir; pretējā gadījumā tukša virkne. |
{#UNIT.PATH} |
Vienības objekta ceļš. |
{#UNIT.JOBID} |
Skaitlisks darba ID, ja vienībai ir rindā ievietots darbs; citādi 0. |
{#UNIT.JOBTYPE} |
Darba tips. |
{#UNIT.JOBPATH} |
Darba objekta ceļš. |
{#UNIT.UNITFILESTATE} |
Vienības faila instalēšanas stāvoklis. |
{#UNIT.SERVICETYPE} |
Pakalpojuma vienības tips (piem., simple, forking, oneshot, idle utt.). Šis makross tiek atgriezts tikai tad, ja vienība ir pakalpojums. |
Vienumu prototipi
Vienumu prototipi, kurus var izveidot, pamatojoties uz systemd servisu atklāšanu, ietver, piemēram:
- Vienuma nosaukums:
{#UNIT.DESCRIPTION} active state info; vienuma atslēga:systemd.unit.info["{#UNIT.NAME}"] - Vienuma nosaukums:
{#UNIT.DESCRIPTION} load state info; vienuma atslēga:systemd.unit.info["{#UNIT.NAME}",LoadState]