8 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 ir atbalstīta tikai Zabbix agent 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.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 arī atklāt atspējotas systemd vienības. Šajā gadījumā iegūtajā JSON tiek atgriezti trīs makrosi:
- {#UNIT.PATH}
- {#UNIT.ACTIVESTATE}
- {#UNIT.UNITFILESTATE}.
Lai no prototipiem tiktu izveidoti vienumi un trigeri atspējotām systemd vienībām, pārliecinieties, ka pielāgojat (vai noņemat) aizliedzošos LLD filtrus priekš {#UNIT.ACTIVESTATE} un {#UNIT.UNITFILESTATE}.
Atbalstītie makrosi
Tālāk norādītie makrosi ir atbalstīti izmantošanai atklāšanas noteikuma filtrā un vienumu, trigeru un grafiku prototipos:
| Makross | Apraksts |
|---|---|
| {#UNIT.NAME} | Primārā vienības nosaukums. |
| {#UNIT.DESCRIPTION} | Cilvēklasāms 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 tas pats, kas 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 šai darba vienībai ir rindā gaidošs darbs; citādi 0. |
| {#UNIT.JOBTYPE} | Darba tips. |
| {#UNIT.JOBPATH} | Darba objekta ceļš. |
| {#UNIT.UNITFILESTATE} | Vienības faila instalēšanas stāvoklis. |
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]