8 Откривање системских услуга

Преглед

Могуће је открити systemd јединице (услуге, подразумевано) са Zabbix-ом.

Кључ ставке

Ставка која се користи у discovery правилу је

systemd.unit.discovery

Овај item кључ је подржан само у Zabbix агенту 2.

Ова ставка враћа JSON са информацијама о systemd јединицама, на пример:

[{ "{#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" }]

Откривање онемогућених системских јединица

Такође је могуће открити онемогућене системске јединице. У овом случају три макроа се враћају у резултујућем JSON-у:

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

Да бисте направили ставке и окидаче од прототипова за онеспособљене системске јединице, обавезно подесите (или уклоните) забрањујуће LLD филтере за {#UNIT.ACTIVESTATE} и {#UNIT.UNITFILESTATE}.

Подржани макрои

Следећи макрои су подржани за употребу у правилу откривања filter и прототиповима ставки, окидача и графикона:

Macro Description
{#UNIT.NAME} Назив примарне јединице.
{#UNIT.DESCRIPTION} Људски читљив опис.
{#UNIT.LOADSTATE} Стање учитавања (тј. да ли је датотека јединице успешно учитана)
{#UNIT.ACTIVESTATE} Активно стање (тј. да ли је јединица тренутно покренута или не)
{#UNIT.SUBSTATE} Подстање (прецизнија верзија активног стања која је специфична за тип јединице, што активно стање није)
{#UNIT.FOLLOWED} Јединица коју ова јединица прати у свом стању, ако постоји; у супротном празан стринг.
{#UNIT.PATH} Путања објекта јединице.
{#UNIT.JOBID} Нумерички ИД задатка ако постоји задатак у реду чекања за јединицу задатка; 0 у супротном.
{#UNIT.JOBTYPE} Тип задатка.
{#UNIT.JOBPATH} Путања објекта задатка.
{#UNIT.UNITFILESTATE} Стање инсталације датотеке јединице.
{#UNIT.SERVICETYPE} Тип јединице сервиса (нпр., simple, forking, oneshot, idle, итд.). Овај макро се враћа само ако је јединица сервис.

Прототипови ставки

Прототипови ставки који се могу креирати на основу откривања systemd сервиса укључују, на пример:

  • Назив ставке: {#UNIT.DESCRIPTION} информације о активном стању; кључ ставке: systemd.unit.info["{#UNIT.NAME}"]
  • Назив ставке: {#UNIT.DESCRIPTION} информације о стању учитавања; кључ ставке: systemd.unit.info["{#UNIT.NAME}",LoadState]