1 Zabbix агент

Преглед

Овај одељак пружа детаље о кључевима ставки који користе комуникацију са Zabbix агентом за прикупљање података.

Постоје пасивне и активне провере агента. Када конфигуришете ставку, можете да изаберете тражени тип:

  • Zabbix агент - за пасивне провере
  • Zabbix агент (активан) - за активне провере

Имајте на уму да су сви кључеви ставки које подржава Zabbix агент на Windows-у такође подржани од нове генерације Zabbix агент 2. Погледајте додатну ставку кључеви које можете да користите само са агентом 2.

Подржани кључеви ставке

Кључеви ставки које можете користити са Zabbix агентом наведени су у наставку.

Кључеви ставки су наведени без параметара и додатних информација. Кликните на кључ ставке да бисте видели комплетне детаље.

Item key Description Item group
kernel.maxfiles Максимална количина отворених датотека, које подржава ОС. Kernel
kernel.maxproc Максимална количина процеса, које подржава ОС.
kernel.openfiles Број тренутно отворених дескриптора датотека.
log Надгледање лог датотека. Log monitoring
log.count Број подударајућих линија у надгледаној лог датотеци.
logrt Надгледање ротационе лог датотеке.
logrt.count Број подударајућих линија у ротационој надгледаној лог датотеци.
modbus.get Читање Modbus података. Modbus
net.dns Провера статуса DNS сервиса. Network
net.dns.perf Провера перформанси DNS сервиса.
net.dns.record Извршавање DNS упита.
net.if.collisions Број изваноквирних колизија.
net.if.discovery Листа мрежних интерфејса.
net.if.in Статистика долазног саобраћаја на мрежном интерфејсу.
net.if.out Статистика одлазног саобраћаја на мрежном интерфејсу.
net.if.total Збир долазног и одлазног саобраћаја на мрежном интерфејсу.
net.tcp.listen Провера, да ли се TCP порт налази у стању LISTEN.
net.tcp.port Провера могућности успостављања TCP везе са одређеним портом.
net.tcp.service Провера да ли сервис ради и прихвата TCP везе.
net.tcp.service.perf Провера перформанси TCP сервиса.
net.tcp.socket.count Враћа број TCP сокета који одговарају параметрима.
net.udp.listen Провера да ли је овај UDP порт у стању LISTEN.
net.udp.service Провера да ли сервис ради и одговара на UDP захтеве.
net.udp.service.perf Провера перформанси UDP сервиса.
net.udp.socket.count Враћа број UDP сокета који одговарају параметрима.
proc.cpu.util Проценат коришћења CPU-а од стране процеса. Processes
proc.get Листа ОС процеса и њихових параметара.
proc.mem Меморија коју процес користи у бајтовима.
proc.num Број процеса.
sensor Читање хардверског сензора. Sensors
system.boottime Време покретања система. System
system.cpu.discovery Листа детектованих CPU/CPU језгара.
system.cpu.intr Уређајски прекиди.
system.cpu.load Оптерећење CPU-а.
system.cpu.num Број CPU-а.
system.cpu.switches Број пребацивања контекста.
system.cpu.util Проценат коришћења CPU-а.
system.hostname Име домаћина система.
system.hw.chassis Информације о шасији.
system.hw.cpu Информације о CPU-у.
system.hw.devices Листа PCI или USB уређаја.
system.hw.macaddr Листа MAC адреса.
system.localtime Време система.
system.run Покретање одређене команде на домаћину.
system.stat Системска статистика.
system.sw.arch Информације о софтверској архитектури.
system.sw.os Информације о оперативном систему.
system.sw.os.get Детаљне информације о оперативном систему (верзија, тип, име дистрибуције итд.).
system.sw.packages Листа инсталираних пакета.
system.sw.packages.get Детаљна листа инсталираних пакета.
system.swap.in Статистика swap-in (са уређаја у меморију).
system.swap.out Статистика swap-in (из меморије на уређај).
system.swap.size Величина swap простора у бајтовима или као проценат од укупног.
system.uname Идентификација система.
system.uptime Време рада у секундама.
system.users.num Број пријављених корисника.
vfs.dev.discovery Листа блок уређаја и њихових типова. Virtual file systems
vfs.dev.read Статистика читања са диска.
vfs.dev.write Статистика писања на диск.
vfs.dir.count Број елемената у директоријуму.
vfs.dir.get Листа елемената у директоријуму.
vfs.dir.size Величина директоријума.
vfs.file.cksum Контролна сума датотеке, израчуната по UNIX cksum алгоритму.
vfs.file.contents Преузимање садржаја датотеке.
vfs.file.exists Провера постојања датотеке.
vfs.file.get Враћа информације о датотеци.
vfs.file.md5sum MD5 checksum датотеке.
vfs.file.owner Преузимање власника датотеке.
vfs.file.permissions Враћа 4-цифрени стринг који садржи октални број са UNIX дозволама.
vfs.file.regexp Преузимање стринга у датотеци.
vfs.file.regmatch Проналажење стринга у датотеци.
vfs.file.size Величина датотеке.
vfs.file.time Информација о времену датотеке.
vfs.fs.discovery Листа монтираних датотека система са њиховим типом и опцијама монтирања.
vfs.fs.get Листа монтираних фајл система са њиховим типом, расположивим простором, статистиком inode-a и опцијама монтирања.
vfs.fs.inode Број или процент inode-a.
vfs.fs.size Простор на диску у бајтовима или у процентима од укупног.
vm.memory.size Величина меморије у бајтовима или у процентима од укупног. Virtual memory
web.page.get Преузима садржај веб странице Web monitoring
web.page.perf Време учитавања целе веб странице.
web.page.regexp Проналази стринг на веб страници.
agent.hostmetadata Метаподаци домаћина агента. Zabbix
agent.hostname Име домаћина агента.
agent.ping Провера доступности агента.
agent.variant Провера верзије Zabbix агента (Zabbix агент или Zabbix агент 2).
agent.version Верзија Zabbix агента.
zabbix.stats Враћа скуп унутрашњих метрика Zabbix сервера или проксија на даљину.
zabbix.stats Враћа број праћених ставки у реду чекања које касне на Zabbix серверу или проксију на даљину.

Подржане платформе

Осим ако је другачије наведено у детаљима ставке, ставке агента (и сви параметри) су подржани на:

  • LinuxFreeBSD
  • FreeBSD
  • Solaris
  • HP-UX
  • AIX
  • MacOS X
  • OpenBSD
  • NetBSD

Многе ставке агента су такође подржане на Windows-у. Погледајте страницу ставка Windows агента за детаље.

Кључни детаљи ставке

Параметри без угластих заграда су обавезни. Параметри означени угластим заградама < > су опциони.

kernel.maxfiles


Максималан број отворених датотека које подржава ОС.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, MacOS X, OpenBSD, NetBSD.

kernel.maxproc


Максимални број процеса које подржава ОС.
Повратна вредност: Integer.
Подржане платформе: Linux 2.6 and later, FreeBSD, Solaris, MacOS X, OpenBSD, NetBSD.

kernel.openfiles


Број тренутно отворених дескриптора датотека.
Повратна вредност: Integer.
Подржане платформе: Linux (ставка може радити на другим UNIX-оликим платформама).

log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>,<options>,<persistent dir>]


Надгледање лог датотеке.
Повратна вредност: Log.
Погледајте подржане платформе.

Параметри:

  • датотека - цела путања и име лог датотеке;
  • regexp - регуларни израз који описује потребан образац;
  • кодирање - кодна страница идентификатор;
  • maxlines - максималан број нових линија у секунди које ће агент послати Zabbix серверу или проксију. Овај параметар замењује вредност 'MaxLinesPerSecond' у zabbix_agentd.conf;
  • режим - могуће вредности: all (подразумевано) или skip - прескаче обраду старијих података (утиче само на новонастале ставке);
  • излаз - опциони шаблон за форматирање излаза. \0 излазна секвенца се замењује одговарајућим делом текста (од првог карактера где подударање почиње до карактера где се подударање завршава) док је \N (где је N=1...9) излазна секвенца је замењена N-том одговарајућом групом (или празним стрингом ако N премашује број нађених група);
  • maxdelay - максимално кашњење у секундама. Тип: float. Вредности: 0 - (подразумевано) никада не игнорише редове лог датотеке; > 0.0 - занемарује старије линије да би се најновије линије анализирале у року од "maxdelay" секунди. Прочитајте напомене maxdelay пре него што их употребите!
  • опције - додатне опције:
    mtime-noreread - нејединствени записи, поново се читају само ако се промени величина датотеке (игноришите промену времена модификације). (Овај параметар је застарео од 5.0.2, јер се сада mtime игнорише.)
  • persistent dir (само у zabbix_agentd на Unix системима; није подржано у Zabbix агенту 2) - апсолутна путања директоријума у који се чувају трајне датотеке. Погледајте и додатне напомене о трајним датотекама.

Коментари:

  • Ставка мора бити конфигурисана као активна провера;
  • Ако датотека недостаје или дозволе не дозвољавају приступ, ставка постаје неподржана;
  • Ако је output остављен празан - враћа се цео ред који садржи одговарајући текст. Имајте на уму да сви глобални типови регуларних израза осим 'Result is TRUE' увек враћају цео подударни ред и параметар output се занемарује.
  • Екстракција садржаја помоћу параметра output се одвија на агенту.

Примери:

log[/var/log/syslog]
       log[/var/log/syslog,error]
       log[/home/zabbix/logs/logfile,,,100]

Пример коришћења параметра output за издвајање броја из евиденције:

log[/app1/app.log,"task run [0-9.]+ sec, processed ([0-9]+) records, [0-9]+ errors",,,,\1] #ова ставка ће се подударати са лог записом "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" и послати само '6080' на сервер. Пошто се шаље нумеричка вредност, "Тип онформације" за ову ставку може да се подеси на "Нумерички (неозначени)" и вредност се може користити у графиконима, окидачима итд.

Пример коришћења параметра output за поновно уписивање лог записа пре слања на сервер:

log[/app1/app.log,"([0-9 :-]+) task run ([0-9.]+) sec, processed ([0-9]+) records, ([0-9]+) errors",,,,"\1 RECORDS: \3, ERRORS: \4, DURATION: \2"] #ова ставка ће одговарати лог запису "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" и послаће измењени запис "2015-11-13 10:08:26 RECORDS: 6080, ERRORS: 0, DURATION: 6.08" на сервер.
log.count[file,<regexp>,<encoding>,<maxproclines>,<mode>,<maxdelay>,<options>,<persistent dir>]


Број одговарајућих редова у лог датотеци која се прати.
Повратна вредност: Integer.
Погледајте подржане платформе.

Параметри:

  • датотека - потпуна путања и име лог датотеке;
  • regexp - регуларни израз који описује потребан образац;
  • encoding - кодна страница идентификатор;
  • maxproclines - максималан број нових линија у секунди који ће агент анализирати (не може прећи 10000). Подразумевана вредност је 10*'MaxLinesPerSecond' у zabbix_agentd.conf.
  • режим - могуће вредности: all (подразумевано) или skip - прескочи обраду старијих података (утиче само на новонастале ставке).
  • maxdelay - максимално кашњење у секундама. Тип: float. Вредности: 0 - (подразумевано) никада не игноришу редове лог датотеке; > 0.0 - занемарује старије линије да би се најновије линије анализирале у року од "maxdelay" секунди. Прочитајте белешке о maxdelay пре него што га употребите!
  • опције - додатне опције:
    mtime-noreread - нејединствени записи, поново се читају само ако се величина датотеке промени (игноришите промену времена модификације). (Овај параметар је застарео од 5.0.2, јер се сада mtime игнорише.)
  • persistent dir (само на zabbix_agentd на Unix системима; није подржано у Zabbix агенту 2) - апсолутна путања директоријума у који се чувају трајне датотеке. Погледајте и додатне напомене о трајним датотекама.

Коментари:

  • Ставка мора бити конфигурисана као активна провера;
  • Подударни редови се броје у новим редовима од последње лог провере од стране агента, и на тај начин зависи од интервала ажурирања ставке;
  • Ако датотека недостаје или дозволе не дозвољавају приступ, ставка постаје неподржана.
logrt[file regexp,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>,<options>,<persistent dir>]


Надгледање лог датотеке која се ротира.
Повратна вредност: Log.
Погледајте подржане платформе.

Параметри:

  • file regexp - апсолутна путања до датотеке, са именом датотеке специфицираним помоћу регуларног израза. Имајте на уму да се регуларни израз примењује само на име датотеке и не мора да се подудара са целим именом (нпр. /path/to/agent ће одговарати zabbix_agentd.log).
  • regexp - регуларни израз који описује потребан образац садржаја.
  • кодирање - кодна страница идентификатор.
  • maxlines - максималан број нових линија у секунди које ће агент послати Zabbix серверу или проксију. Овај параметар замењује вредност 'MaxLinesPerSecond' у zabbix_agentd.conf.
  • режим - могуће вредности: all (подразумевано) или skip - прескочи обраду старијих података (утиче само на новонастале ставке).
  • излаз - опциони шаблон за форматирање излаза. \0 излазна секвенца се замењује одговарајућим делом текста (од првог карактера где подударање почиње до карактера где се подударање завршава) док је \N (where N=1...9) излазна секвенца се замењује са N-том подударном групом (или празним стрингом ако N премашује број ухваћених група).
  • maxdelay - максимално кашњење у секундама. Тип: float. Вредности: 0 - (подразумевано) никада не игноришите редове лог датотеке; > 0.0 - занемарује старије линије да би се најновије линије анализирале у року од "maxdelay" секунди. Прочитајте белешке о maxdelay пре него што га употребите!
  • опције - тип ротације лог и друге опције. Могуће вредности:
    rotate (подразумевано),
    copytruncate - имајте на уму да copytruncate не може да се користи заједно са maxdelay. У овом случају maxdelay мора бити 0 или није наведено; погледајте copytruncate белешке,
    mtime-reread - нејединствени записи, поново прочитајте ако се време модификације или величина промени (подразумевано),
    mtime-reread - не-јединствени записи, поново прочитајте само ако се величина промени (занемарите промену времена модификације).
  • persistent dir (само у zabbix_agentd на Unix системима; није подржано у Zabbix агенту 2) - апсолутна путања директоријума у који се чувају трајне датотеке. Погледајте и додатне напомене о трајним датотекама.

Коментари:

  • Ставка мора бити конфигурисана као активна провера;
  • Лог ротација је заснована на времену последње измене датотека;
  • Имајте на уму да је logrt дизајниран да ради са једном тренутно активном лог датотеком, са неколико других одговарајућих неактивних датотека које се ротирају. Ако, на пример, директоријум има много активних лог датотека, треба креирати засебну logrt ставку за сваку од њих. У супротном, ако једна logrt ставка покупи превише датотека, то може довести до исцрпљивања меморије и пада праћења.
  • Ако је output празан - враћа се цео ред који садржи одговарајући текст. Имајте на уму да сви глобални типови регуларних израза осим 'Result is TRUE' увек враћају целу линију која се подудара и параметар output се занемарује.
  • Екстракција садржаја помоћу параметра оутпут се одвија на агенту.
  • У параметру file regexp, путања лог директоријума и регуларни израз датотеке евиденције морају бити раздвојени исправним сепаратором директоријума:
    • на Windows-у, сепаратор мора бити обрнута коса црта (\); косе црте се могу толерисати на другим позицијама, осим на оној која раздваја путању лог директоријума и регуларни израз лог датотеке (погледајте примере испод).
    • на другим системима, мора бити коса црта (/).

Примери за Windows:

logrt["c:/dir1/dir2/dir3\filename.*\.log","pattern_to_match"] #ова ставка ће прикупљати податке из лог датотека у "c:/dir1/dir2/dir3" где име датотеке почиње са "filename" и завршава се са било којом екстензијом која одговара ". log".
       logrt["//example.com/share/dir1/dir2/dir3\filename.*\.log","pattern_to_match"] #ова ставка ће прикупљати податке из лог датотека у мрежном дељењу "//example.com/share/dir1/dir2/dir3" где име датотеке почиње са "filename" и завршава се са било којом екстензијом која одговара ".log".

Примери за друге системе:

logrt["/home/zabbix/logs/^logfile[0-9]{1,3}$",,,100] #ова ставка ће одговарати дагтотеци као што је "logfile1" (неће одговарати ".logfile1").
       logrt["/home/user/^logfile_.*_[0-9]{1,3}$","pattern_to_match","UTF-8",100] #ова ставка ће прикупљати податке из датотека као што је "logfile_abc_1" или "logfile__001".

Пример коришћења параметра output за издвајање броја из лог записа:

logrt[/app1/^test.*log$,"task run [0-9.]+ sec, processed ([0-9]+) records, [0-9]+ errors",,,,\1] #ова ставка ће одговарати лог запису "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" и послати само '6080' на сервер. Пошто се шаље нумеричка вредност, "Тип информације" за ову ставку може да се подеси на "Нумерички (неозначени)" и вредност се може користити у графиконима, окидачима итд.

Пример коришћења параметра output за преписивање лог записа на сервер:

logrt[/app1/^test.*log$,"([0-9 :-]+) task run ([0-9.]+) sec, processed ([0-9]+) records, ([0-9]+) errors",,,,"\1 RECORDS: \3, ERRORS: \4, DURATION: \2"] #ова ставка ће одговарати лог запису "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" и шаље измењени запис "2015-11-13 10:08:26 RECORDS: 6080, ERRORS: 0, DURATION: 6.08" на сервер.
logrt.count[file regexp,<regexp>,<encoding>,<maxproclines>,<mode>,<maxdelay>,<options>,<persistent dir>]


Број одговарајућих редова у праћеној лог датотеци која је ротирана.
Повратна вредност: Integer.
Погледајте подржане платформе.

Параметри:

  • file regexp - апсолутна путања до датотеке, са именом датотеке специфицираним помоћу регуларног израза. Имајте на уму да се регуларни израз примењује само на име датотеке и не мора да се подудара са целим именом (нпр. /path/to/agent ће одговарати зzabbix_agentd.log).
  • regexp - регуларни израз који описује потребан образац.
  • кодирање - кодна страница идентификатор.
  • maxproclines - максималан број нових линија у секунди који ће агент анализирати (не може прећи 10000). Подразумевана вредност је 10*'MaxLinesPerSecond' у zabbix_agentd.conf.
  • режим - могуће вредности: all (подразумевано) или skip - прескочи обраду старијих података (утиче само на новонастале ставке).
  • maxdelay - максимално кашњење у секундама. Тип: float. Вредности: 0 - (подразумевано) никада не игноришите редове лог датотеке; > 0.0 - занемари старије линије да би се најновије линије анализирале у року од "maxdelay" секунди. Прочитајте напомене maxdelay пре него што их употребите!
  • опције - тип ротације лог датотеке и друге опције. Могуће вредности:
    rotate (подразумевано),
    copytruncate - имајте на уму да copytruncate не може да се користи заједно са maxdelay. У овом случају maxdelay мора бити 0 или није наведено; погледајте copytruncate белешке,
    mtime-reread - нејединствени записи, поново прочитајте ако се време модификације или величина промени (подразумевано),
    mtime-noreread - не-јединствени записи, поново прочитајте само ако се величина промени (занемарите промену времена модификације).
  • persistent dir (само у zabbix_agentd на Unix системима; није подржано у Zabbix агенту 2) - апсолутна путања директоријума у који се чувају трајне датотеке. Погледајте и додатне напомене о трајним датотекама.

Коментари:

  • Ставка мора бити конфигурисана као активна провера;

  • Подударни редови се броје у новим редовима од последње лог провере од стране агента, и на тај начин зависе од интервала ажурирања ставке;

  • Лог ротација дневника је заснована на времену последње измене датотека;

  • У параметру file regexp, путања лог директоријума и регуларни израз лог датотеке морају бити раздвојени исправним сепаратором директоријума:

    • на Windows-у, сепаратор мора бити обрнута коса црта (\); косе црте се могу толерисати на другим позицијама, осим на оној која раздваја путању лог директоријума и регуларни израз лог датотеке (погледајте примере испод).
    • на другим системима, мора бити коса црта (/).

Примери за Windows:

logrt.count["c:/dir1/dir2/dir3\filename.*\.log","pattern_to_match"] #ова ставка ће рачунати број подударања за образац "pattern_to_match" у лог датотекама које се налазе у "c:/dir1/dir2/dir3".
       logrt.count["//example.com/share/dir1/dir2/dir3\filename.*\.log","pattern_to_match"] #ова ставка ће рачунати број подударања за образац "pattern_to_match" у датотекама евиденције на мрежни део "//example.com/share/dir1/dir2/dir3".

Примери за друге системе:

logrt.count["/home/zabbix/logs/^logfile[0-9]{1,3}$",,,100] #ова ставка ће рачунати број подударања за образац "^logfile[0-9]{1,3}$" у лог датотекама у директоријуму "/home/zabbix/logs".
       logrt.count["/home/user/^logfile_.*_[0-9]{1,3}$","pattern_to_match","UTF-8",100] #ова ставка ће бројати број појављивања обрасца "pattern_to_match" у лог датотекама које се налазе у "/home/user".
modbus.get[endpoint,<slave id>,<function>,<address>,<count>,<type>,<endianness>,<offset>]


Чита Modbus податке.
Повратна вредност: JSON објекат.
Подржане платформе: Linux.

Параметри:

  • endpoint - крајња тачка дефинисана као protocol://connection_string;
  • *slave id - ID подређеног уређаја;
  • function - Modbus функција;
  • address - адреса првог регистра, калема или улаза;
  • count - број записа за читање;
  • type - тип података;
  • endianness - конфигурација бајтног поретка;
  • offset - број регистара, почевши од 'address', чији ће резултати бити одбачени.

Погледајте детаљни опис параметара.

net.dns[<ip>,name,<type>,<timeout>,<count>,<protocol>]


Проверава статус DNS услуге.
Враћане вредности: 0 - DNS резолуција није успела (DNS сервер није одговорио или је вратио грешку); 1 - DNS резолуција је успела.
Погледајте подржане платформе.

Параметри:

  • ip (занемарује се на Windows-у осим ако се не користи Zabbix агент 2) - IP адреса DNS сервера (оставите празно за подразумевани DNS сервер);
  • назив - DNS име за упит;
  • тип - тип записа који ће бити упитан (подразумевано је SOA);
  • време чекања (занемарује се на Windows-у осим ако се не користи Zabbix агент 2) - време чекања за захтев у секундама (подразумевано је 1 секунда);
  • количина (занемарује се на Windows-у осим ако се не користи Zabbix агент 2) - број покушаја за захтев (подразумевано је 2);
  • протокол - протокол који се користи за обављање DNS упита: udp (подразумевано) или tcp.

Коментари:

  • Могуће вредности за type су: ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (није подржано за Zabbix агент на Windows-у, Zabbix агент 2 на свим ОС), HINFO, MINFO, TXT, SRV
  • За обрнуто DNS тражење (када је type подешен на PTR), можете да наведете DNS име у обрнутом и необрнутом формату (погледајте примере испод). Имајте на уму да када се захтева PTR запис, DNS име је заправо IP адреса.
  • Интернационализована имена домена нису подржана, уместо тога користите IDNA кодирана имена.

Примери:

net.dns[198.51.100.1,example.com,MX,2,1]
       
       net.dns[,198.51.100.1,PTR]
       net.dns[,1.100.51.198.in-addr.arpa,PTR]
       
       net.dns[,2a00:1450:400f:800::200e,PTR]
       net.dns[,e.0.0.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.0.f.0.0.4.0.5.4.1.0.0.a.2.ip6.arpa,PTR]
net.dns.perf[<ip>,name,<type>,<timeout>,<count>,<protocol>]


Проверава перформансе DNS услуге.
Повратна вредност: Float (0 – услуга не ради; секунде – број секунди утрошених чекајући одговор од услуге).
Погледајте подржане платформе.

Параметри:

  • ip (занемарује се на Windows-у осим ако се не користи Zabbix агент 2) - IP адреса DNS сервера (оставите празно за подразумевани DNS сервер);
  • назив - DNS име за упит;
  • тип - тип записа који ће бити упитан (подразумевано је SOA);
  • време чекања (занемарује се на Windows-у осим ако се не користи Zabbix агент 2) - време чекања за захтев у секундама (подразумевано је 1 секунда);
  • количина (занемарује се на Windows-у осим ако се не користи Zabbix агент 2) - број покушаја за захтев (подразумевано је 2);
  • протокол - протокол који се користи за обављање DNS упита: udp (подразумевано) или tcp.

Коментари:

  • Могуће вредности за type су:
    ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (није подржано за Zabbix агента на Windows-у, Zabbix агент 2 на свим ОС), HINFO, MINFO, TXT, SRV
  • За обрнуто DNS тражење (када је type подешен на PTR), можете да наведете DNS име у обрнутом и необрнутом формату (погледајте примере испод). Имајте на уму да када се захтева PTR запис, DNS име је заправо IP адреса.
  • Интернационализована имена домена нису подржана, уместо тога користите IDNA кодирана имена.
  • Од Zabbix-а 7.0.1, ставка враћа време одговора уместо 0 када DNS сервер одговори кодом грешке (на пример, NXDOMAIN или SERVFAIL).

Примери:

net.dns.perf[198.51.100.1,example.com,MX,2,1]
       
       net.dns.perf[,198.51.100.1,PTR]
       net.dns.perf[,1.100.51.198.in-addr.arpa,PTR]
       
       net.dns.perf[,2a00:1450:400f:800::200e,PTR]
       net.dns.perf[,e.0.0.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.0.f.0.0.4.0.5.4.1.0.0.a.2.ip6.arpa,PTR]
net.dns.record[<ip>,name,<type>,<timeout>,<count>,<protocol>]


Изводи DNS упит.

Zabbix агент 2 такође обезбеђује net.dns.get, који нуди додатне функције као што су више типова записа и већа контрола над DNS надгледањем. Повратна вредност: низ знакова са потребним типом информација.
Погледајте подржане платформе.

Параметри:

  • ip (занемарује се на Windows-у осим ако се не користи Zabbix агент 2) - IP адреса DNS сервера (оставите празно за подразумевани DNS сервер);
  • name - DNS име за упит;
  • type - тип записа који ће бити упитан (подразумевано је SOA);
  • timeout (занемарује се на Windows-у осим ако се не користи Zabbix агент 2) - временско ограничење за захтев у секундама (подразумевано је 1 секунда);
  • count (занемарује се на Windows-у осим ако се не користи Zabbix агент 2) - број покушаја за захтев (подразумевано је 2);
  • protocol - протокол који се користи за обављање DNS упита: udp (подразумевано) или tcp.

Коментари:

– Могуће вредности за type су:
ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (није подржано за Zabbix агент на Windows-у, Zabbix агент 2 на свим OS), HINFO, MINFO, TXT, SRV - За обрнуто DNS тражење (када је type подешен на PTR), можете да наведете DNS име у обрнутом или необрнутом формату (погледајте примере испод). Имајте на уму да када се захтева PTR запис, DNS име је заправо IP адреса. – Интернационализована имена домена нису подржана, уместо тога користите IDNA кодирана имена.

Примери:

net.dns.record[198.51.100.1,example.com,MX,2,1]
       
       net.dns.record[,198.51.100.1,PTR]
       net.dns.record[,1.100.51.198.in-addr.arpa,PTR]
       
       net.dns.record[,2a00:1450:400f:800::200e,PTR]
       net.dns.record[,e.0.0.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.0.f.0.0.4.0.5.4.1.0.0.a.2.ip6.arpa,PTR]
net.if.collisions[if]


Број колизија ван прозора.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, Solaris, AIX, MacOS X, OpenBSD, NetBSD. Root привилегије су потребне на NetBSD-у.

Параметар:

  • if - назив мрежног интерфејса
net.if.discovery


Листа мрежних интерфејса. Користи се за откривање ниског нивоа.
Повратна вредност: JSON објекат.
Подржане платформе: Linux, FreeBSD, Solaris, HP-UX, AIX, OpenBSD, NetBSD.

net.if.in[if,<mode>]


Статистика долазног саобраћаја на мрежном интерфејсу.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, Solaris5, HP-UX, AIX, MacOS X, OpenBSD, NetBSD. Root привилегије су потребне на NetBSD-у.

Параметри:

  • if - назив мрежног интерфејса (Unix); потпун опис мрежног интерфејса или IPv4 адреса; или, ако је у заградама, GUID мрежног интерфејса (Windows);
  • режим - могуће вредности:
    bytes - број бајтова (подразумевано)
    packets - број пакета
    errors - број грешака
    dropped - број испуштених пакета
    overruns (fifo) - број грешака FIFO бафера
    frame - број грешака у кадрирању пакета
    compressed - број компримованих пакета које је примио драјвер уређаја
    multicast - број multicast оквира које је примио драјвер уређаја

Коментари:

  • Можете користити овај кључ са кораком предобраде Промена у секунди да бисте добили статистику бајтова у секунди;
  • Режим dropped је подржан само на Linux, FreeBSD, HP-UX, MacOS X, OpenBSD, NetBSD;
  • Режими overruns, frame, compressed, multicast су подржани само на Linux-у;
  • На HP-UX-у ова ставка не пружа детаље о интерфејсима повратне петље (нпр. lo0).

Примери:

net.if.in[eth0]
       net.if.in[eth0,errors]
net.if.out[if,<mode>]


Статистика одлазног саобраћаја на мрежном интерфејсу.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, Solaris5, HP-UX, AIX, MacOS X, OpenBSD, NetBSD. Root привилегије су потребне на NetBSD-у.

Параметри:

  • if - назив мрежног интерфејса (Unix); комплетан опис мрежног интерфејса или IPv4 адреса; или, ако је у заградама, GUID мрежног интерфејса (Windows);
  • режим - могуће вредности:
    bytes - број бајтова (подразумевано)
    packets - број пакета
    errors - број грешака
    dropped - број испуштених пакета
    overruns (fifo) - број грешака FIFO бафера
    collisions (colls) - број колизија откривених на интерфејсу
    carrier - број губитака носиоца које је детектовао драјвер уређаја
    compressed - број компримованих пакета које је пренео драјвер уређаја

Коментари:

  • Можете користити овај кључ са кораком предобраде Промена по секунди да бисте добили статистику бајтова у секунди;
  • Режим dropped је подржан само на Linux, HP-UX;
  • Режими overruns, collision, carrier, compressed су подржани само на Linux-у;
  • На HP-UX-у ова ставка не пружа детаље о интерфејсима повратне петље (нпр. lo0).

Примери:

net.if.out[eth0]
       net.if.out[eth0,errors]
net.if.total[if,<mode>]


Збир статистике долазног и одлазног саобраћаја на мрежном интерфејсу.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, Solaris5, HP-UX, AIX, MacOS X, OpenBSD, NetBSD. Root привилегије су потребне на NetBSD-у.

Параметри:

  • if - назив мрежног интерфејса (Unix); комплетан опис мрежног интерфејса или IPv4 адреса; или, ако је у заградама, GUID мрежног интерфејса (Windows);
  • режим - могуће вредности:
    bytes - број бајтова (подразумевано)
    packets - број пакета
    errors - број грешака
    dropped - број испуштених пакета
    overruns (fifo) - број грешака FIFO бафера
    collisions (colls) - број колизија откривених на интерфејсу
    compressed - број компримованих пакета које преноси или прима драјвер уређаја

Коментари:

  • Можете да користите овај кључ са кораком предобраде Промена у секунди да бисте добили статистику бајтова у секунди;
  • Режим dropped је подржан само на Linux, HP-UX. Испуштени пакети су подржани само ако и net.if.in и net.if.out раде за испуштене пакете на вашој платформи.
  • Режими overruns, collision, compressed су подржани само на Linux-у;
  • На HP-UX-у ова ставка не пружа детаље о интерфејсима повратне петље (нпр. lo0).

Примери:

net.if.total[eth0]
       net.if.total[eth0,errors]
net.tcp.listen[port]


Проверава да ли је овај TCP порт у стању LISTEN.
Повратне вредности: 0 - није у стању LISTEN; 1 - налази се у стању LISTEN.
Подржане платформе: Linux, FreeBSD, Solaris, MacOS X.

Параметар:

  • port - Број TCP порта

На Linux језгрима 2.6.14 и новијим, информације о слушању TCP socket-а се добијају из NETLINK интерфејсима језгара, ако је могуће. У супротном, информације се преузимају из /proc/net/tcp и /roc/net/tcp6 датотека.

Пример:

net.tcp.listen[80]
net.tcp.port[<ip>,port]


Проверава да ли је могуће успоставити TCP конекцију са наведеним портом.
Повратне вредности: 0 - не може се повезати; 1 - може да се повеже.
Погледајте подржане платформе.

Параметри:

  • ip - IP адреса или DNS име (подразумевано је 127.0.0.1);
  • port - број порта.

Коментари:

  • За једноставно тестирање TCP перформанси користите net.tcp.service.perf[tcp,<ip>,<port>];
  • Ове провере могу да доведу до додатних порука у system daemon logfiles (обично се евидентирају SMTP and SSH сесије).

Пример:

net.tcp.port[,80] #this item can be used to test the web server availability running on port 80
net.tcp.service[service,<ip>,<port>]


Проверава да ли је сервис покренут и прихвата ли TCP везе.
Враћане вредности: 0 - сервис не ради; 1 - сервис је покренут.
Погледајте подржане платформе.

Параметри:

  • сервис - ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, или telnet (погледајте детаље);
  • ip - IP адреса или DNS име (подразумевано је 127.0.0.1);
  • порт - број порта (подразумевано се користи стандардни број порта сервиса).

Коментари:

  • Ове провере могу резултирати додатним порукама у датотекама евиденције системског daemon-а (обично се евидентирају SMTP и SSH сесије);
  • Провера шифрованих протокола (као што је IMAP на порту 993 или POP на порту 995) тренутно није подржана. Као решење, користите net.tcp.port[] за овакве провере.
  • Проверу LDAP-а и HTTPS-а на Windows-у подржава само Zabbix агент 2;
  • Telnet провера тражи prompt за пријаву (':' на крају).

Пример:

net.tcp.service[ftp,,45] #this item can be used to test the availability of FTP server on TCP port 45
net.tcp.service.perf[service,<ip>,<port>]


Проверава перформансе TCP сервиса.
Враћане вредности: Float (0 – сервис не ради; секунде – број секунди утрошених чекајући одговор од сервиса).
Погледајте подржане платформе.

Параметри:

  • сервис - ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, или telnet (погледајте детаље);
  • ip - IP адреса или DNS име (подразумевано је 127.0.0.1);
  • порт - број порта (подразумевано се користи стандардни број порта сервиса).

Коментари:

  • Провера шифрованих протокола (као што је IMAP на порту 993 или POP на порту 995) тренутно није подржана. Као решење, користите net.tcp.service.perf[tcp,<ip>,<port>] за овакве провере.
  • Telnet провера тражи prompt за пријаву (':' на крају).

Пример:

net.tcp.service.perf[ssh] #this item can be used to test the speed of initial response from the SSH server
net.tcp.socket.count[<laddr>,<lport>,<raddr>,<rport>,<state>]


Враћа број TCP socket-а који одговарају параметрима.
Повратна вредност: Integer.
Подржане платформе: Linux.

Параметри:

  • laddr - локална IPv4/6 адреса или CIDR подмрежа;
  • lport - локални број порта или назив сервиса;
  • raddr - удаљена IPv4/6 адреса или CIDR подмрежа;
  • rport - број удаљеног порта или назив сервиса;
  • state - стање везе (established, syn_sent, syn_recv, fin_wait1, fin_wait2, time_wait, close, close_wait, last_ack, listen, closing).

Пример:

net.tcp.socket.count[,80,,,established] #the number of connections to local TCP port 80 in the established state
net.udp.listen[port]


Проверава да ли је овај UDP порт у стању LISTEN.
Повратне вредности: 0 - није у стању LISTEN; 1 - налази се у стању LISTEN.
Подржане платформе: Linux, FreeBSD, Solaris, MacOS X.

Параметар:

  • port - Број UDP порта

Пример:

net.udp.listen[68]
net.udp.service[service,<ip>,<port>]


Проверава да ли је сервис покренут и да ли одговара на UDP захтеве.
Враћане вредности: 0 - сервис не ради; 1 - сервис је покренут.
Погледајте подржане платформе.

Параметри:

  • сервис - ntp (погледајте детаљи);
  • ip - IP адреса или DNS име (подразумевано је 127.0.0.1);
  • порт - број порта (подразумевано се користи стандардни број порта сервиса).

Пример:

net.udp.service[ntp,,45] #this item can be used to test the availability of NTP service on UDP port 45
net.udp.service.perf[service,<ip>,<port>]


Проверава перформансе UDP сервиса.
Враћане вредности: Float (0 – сервис не ради; секунде – број секунди утрошених чекајући одговор од услуге).
Погледајте подржане платформе.

Параметри:

  • сервис - ntp (погледајте детаље);
  • ip - IP адреса или DNS име (подразумевано је 127.0.0.1);
  • порт - број порта (подразумевано се користи стандардни број порта сервиса).

Пример:

net.udp.service.perf[ntp] #this item can be used to test response time from NTP service
net.udp.socket.count[<laddr>,<lport>,<raddr>,<rport>,<state>]


Враћа број UDP сокета који одговарају параметрима.
Повратна вредност: Integer.
Подржане платформе: Linux.

Параметри:

  • laddr - локална IPv4/6 адреса или CIDR подмрежа;
  • lport - локални број порта или име сервиса;
  • raddr - удаљена IPv4/6 адреса или CIDR подмрежа;
  • rport - број удаљеног порта или име сервиса;
  • state - стање везе (established, unconn).

Пример:

net.udp.socket.count[,,,,established] #returns the number of UDP sockets in the connected state
proc.cpu.util[<name>,<user>,<type>,<cmdline>,<mode>,<zone>]


Проценат искоришћености процесора процеса.
Повратна вредност: Float.
Подржане платформе: Linux, Solaris6.

Параметри:

  • име - име процеса (подразумевано је сви процеси);
  • корисник - корисничко име (подразумевано је сви корисници);
  • тип - тип коришћења CPU-а: total (подразумевано), user, или system;
  • cmdline - филтрирање према командној линији (то је регуларни израз);
  • режим - режим прикупљања података: avg1 (подразумевано), avg5, или avg15;
  • зона - циљна зона: current (подразумевано) или all. Овај параметар је подржан само на Solaris-у.

Коментари:

  • Враћена вредност је заснована на једном проценту искоришћености језгра CPU-а. На пример, искоришћеност CPU-а процеса који у потпуности користи два језгра је 200%.
  • Подаци о коришћењу CPU процеса се прикупљају од стране сакупљача који подржава максимално 1024 јединствена (по имену, кориснику и командној линији) упита. Упити којима се није приступило у последња 24 сата уклањају се из сакупљача.
  • Када подесите параметар zone на current (или подразумевано) у случају да је агент компајлиран на Solaris-у без подршке за зону, али ради на новијем Solaris-у где су зоне подржане, агент ће вратити NOTSUPPORTED (агент не може ограничити резултате само на тренутну зону). Међутим, all је подржано у овом случају.

Примери:

proc.cpu.util[,root] #Коришћење CPU-а свих процеса који се покрећу под "root" корисником
       roc.cpu.util[zabbix_server,zabbix] #CPU коришћење свих zabbix_server процеса који раде под zabbix корисником
proc.get[<name>,<user>,<cmdline>,<mode>]


Листа ОС процеса и њихових параметара. Може се користити за откривање ниског нивоа.
Повратна вредност: JSON објекат.
Подржане платформе: Linux, FreeBSD, Windows, OpenBSD, NetBSD.

Параметри:

  • назив - име процеса (подразумевано сви процеси);
  • корисник - корисничко име (подразумевано сви корисници);
  • cmdline - филтрирање према командној линији (то је регуларни израз). Овај параметар није подржан за Windows; на другим платформама није подржан ако је режим подешен на 'summary'.
  • режим - могуће вредности:
    process (подразумевано), thread (није подржано за NetBSD), summary. Погледајте листу параметара процеса враћених за сваки режим и ОС.

Коментари:

  • Ако вредност не може да се преузме, на пример, због грешке (процес је већ завршен, недостатак дозвола, неуспех системског позива), -1 ће бити враћено;
  • Погледајте белешке о избору процеса са параметрима name и cmdline (специфично за Linux).

Примери:

proc.get[zabbix_server,zabbix,,process] #листа свих zabbix_server процеса који раде под zabbix корисником, враћа један унос по PID-у
       proc.get[java,,,thread] #листа свих Јава процеса, враћа један унос по нити
       proc.get[,zabbix,,summary] #комбиновани подаци за процесе сваког типа који раде под zabbix корисником, враћа један унос по имену процеса
proc.mem[<name>,<user>,<mode>,<cmdline>,<memtype>]


Меморија коју процес користи у бајтовима.
Повратна вредност: Integer - са mode као max, min, sum; Float - са mode као avg
Подржане платформе: Linux, FreeBSD, Solaris, AIX, OpenBSD, NetBSD.

Параметри:

  • назив - име процеса (подразумевано је сви процеси);
  • корисник - корисничко име (подразумевано је сви корисници);
  • режим - могуће вредности: avg, max, min, или sum (подразумевано);
  • cmdline - филтрирање према командној линији (то је регуларни израз);
  • memtype - тип меморије који процес користи

Коментари:

  • Параметар memtype је подржан само на Linux, FreeBSD, Solaris6, AIX;
  • Када неколико процеса користи заједничку меморију, збир меморије коју користе процеси може резултирати великим, нереалним вредностима.

    Погледајте напомене о одабиру процеса са name и cmdline параметрима (специфични за Linux).

    Када се ова ставка позове из командне линије и садржи параметар командне линије (нпр. коришћењем режима тестирања агента: zabbix_agentd -t proc.mem[,,,apache2]), један додатни процес ће се рачунати, пошто ће агент сам себе бројати.

Примери:

proc.mem[,root] #меморија коју користе сви процеси који раде под "root" корисником
       proc.mem[zabbix_server,zabbix] #меморија коју користе сви zabbix_server процеси који раде под zabbix корисником
       proc.mem[,oracle,max,oracleZABBIX] #меморија коју користи процес који највише захтева меморију који ради под Oracle-ом који има oracleZABBIX у командној линији
proc.num[<name>,<user>,<state>,<cmdline>,<zone>]


Број процеса.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, Solaris6, HP-UX, AIX, OpenBSD, NetBSD.

Параметри:

  • назив - име процеса (подразумевано је сви процеси);
  • корисник - корисничко име (подразумевано је сви корисници);
  • стање - могуће вредности:
    all (подразумевано),
    disk - непрекидно спавање,
    run - ради,
    sleep - прекидно спавање,
    trace - заустављен,
    zomb - зомби;
  • cmdline - филтрирање према командној линији (то је регуларни израз);
  • зона - циљна зона: current (подразумевано) или all. Овај параметар је подржан само на Solaris-у.

Коментари:

  • Параметри стања disk и trace су подржани само на Linux, FreeBSD, OpenBSD, NetBSD;
  • Када се ова ставка позове из командне линије и садржи параметар командне линије (нпр. коришћењем режима тестирања агента: zabbix_agentd -t proc.num[,,,apache2]), један додатни процес ће се рачунати као сам агент;
  • Када подесите параметар zone на current (или подразумевано) у случају да је агент компајлиран на Solaris-у без подршке за зону, али ради на новијем Solaris-у где су зоне подржане, агент ће вратити NOTSUPPORTED (агент не може ограничити резултате само на тренутну зону). Међутим, all је подржано у овом случају.
  • Погледајте белешке о избору процеса са параметрима name и cmdline (специфично за Linux).

Примери:

proc.num[,mysql] #број процеса који се покрећу под корисником mysql
       proc.num[apache2,www-data] #број apache2 процеса покренутих под корисником www-data
       proc.num[,oracle,sleep,oracleZABBIX] #број процеса у стању спавања који раде под Oracle-ом који имају oracleZABBIX у командној линији
sensor[device,sensor,<mode>]


Очитавање хардверског сензора.
Повратна вредност: Float.
Подржане платформе: Linux, OpenBSD.

Параметри:

  • уређај - име уређаја, може бити регуларни израз ако је режим изостављен;
  • сензор - назив сензора, може бити регуларни израз ако је режим изостављен;
  • режим - могуће вредности: avg, max, или min (ако је овај параметар изостављен, уређај и сензор се третирају дословно).

Коментари:

  • Чита /proc/sys/dev/sensors на Linux 2.4;
  • Чита /sys/class/hwmon на Linux 2.6+. Погледајте детаљнији опис ставке сензор на Linux-у.
  • Чита hw.sensors MIB на OpenBSD.

Примери:

sensor[w83781d-i2c-0-2d,temp1]
       sensor[cpu0,temp0] #the temperature of one CPU
       sensor["cpu[0-2]$",temp,avg] #the average temperature of the first three CPUs
system.boottime


Време покретања система.
Повратна вредност: Integer (Unix timestamp).
Подржане платформе: Linux, FreeBSD, Solaris, MacOS X, OpenBSD, NetBSD.

system.cpu.discovery


Листа откривених CPUs/CPU језгара. Користи се за откривање ниског нивоа.
Повратна вредност: JSON објекат.
Погледајте подржане платформе.

system.cpu.intr


Уређај прекида.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, Solaris, AIX, OpenBSD, NetBSD.

system.cpu.load[<cpu>,<mode>]


оптерећење CPU-а.
Повратна вредност: Float.
Погледајте подржане платформе.

Параметри:

  • cpu - могуће вредности: all (подразумевано) или percpu (укупно оптерећење подељено са бројем CPU-а на мрежи);
  • режим - могуће вредности: * avg1* (једноминутни просек, подразумевано), avg5, или avg15.

Пример:

system.cpu.load[,avg5]
system.cpu.num[<type>]


Број CPU-а.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, Solaris, HP-UX, AIX, MacOS X, OpenBSD, NetBSD.

Параметар:

  • тип - могуће вредности: online (подразумевано) или max

Параметар типа max је подржан само на Linux, FreeBSD, Solaris, MacOS X.

Пример:

system.cpu.num
system.cpu.switches


Број промена контекста.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, Solaris, AIX, OpenBSD, NetBSD.

system.cpu.util[<cpu>,<type>,<mode>,<logical or physical>]


Проценат искоришћености CPU-а.
Повратна вредност: Float.
Подржане платформе: Linux, FreeBSD, Solaris, HP-UX, AIX, OpenBSD, NetBSD.

Параметри:

  • cpu - <CPU број> или all (подразумевано);
  • тип - могуће вредности: user (default), idle, nice, system, iowait, interrupt, softirq, steal, guest (на језгрима Linux-а 2.6.24 и новијим), или guest_nice (на језгрима Linux-а 2.6.33 и новијим);
  • режим - могуће вредности: avg1 (једноминутни просек, подразумевано), avg5, или avg15;
  • логички или физички - могуће вредности: logical (подразумевано) или physical. Овај параметар је подржан само на AIX-у.

Коментари:

  • Параметар типа nice је подржан само на Linux, FreeBSD, HP-UX, OpenBSD, NetBSD.
  • Параметар типа iowait је подржан само на Linux-у 2.6 и новијим верзијама, Solaris, AIX.
  • Параметар типа interrupt је подржан само на Linux-у 2.6 и новијим верзијама, FreeBSD, OpenBSD.
  • Параметри типа softirq, steal, guest, guest_nice подржани су само на Linux-у 2.6 и новијим верзијама.
  • Параметри режима avg5 и avg15 су подржани на Linux, FreeBSD, Solaris, HP-UX, AIX, OpenBSD, NetBSD.

Пример:

system.cpu.util[0,user,avg5]
system.hostname[<type>,<transform>]


Име системског домаћина.
Повратна вредност: String.
Погледајте подржане платформе.

Параметри:

  • тип - могуће вредности: netbios (подразумевано на Windows-у), host (подразумевано на Linux-у), shorthost (враћа део имена домаћина пре прве тачке, цео стринг имена без тачака) , fqdn (враћа потпуно квалификовано име домена);
  • transform - могуће вредности: none (подразумевано) или lower (конвертовање у мала слова).

Вредност се добија узимањем nodename из излаза система API uname().

Примери враћених вредности:

system.hostname → linux-w7x1
       system.hostname → example.com
       system.hostname[shorthost] → example
       system.hostname → WIN-SERV2008-I6
       system.hostname[host] → Win-Serv2008-I6LonG
       system.hostname[host,lower] → win-serv2008-i6long
       system.hostname[fqdn,lower] → blog.zabbix.com
system.hw.chassis[<info>]


Информације о шасији.
Повратна вредност: Стринг.
Подржане платформе: Linux.

Параметар:

  • инфо - могуће вредности: full (подразумевано), model, serial, type, или vendor

Коментари:

  • Овај кључ ставке зависи од доступности табеле SMBIOS
  • Покушаће да прочита DMI табелу из sysfs-а, ако приступ sysfs-у не успе, покушајте да читате директно из меморије;
  • Потребне су Root дозволе јер се вредност добија читањем из sysfs-а или меморије.

Пример:

system.hw.chassis[full] → Hewlett-Packard HP Pro 3010 Small Form Factor PC CZXXXXXXXX Desktop
system.hw.cpu[<cpu>,<info>]


Информације о CPU-у.
Повратна вредност: String или Integer.
Подржане платформе: Linux.

Параметри:

  • cpu - <CPU број> или all (подразумевано);
  • info - могуће вредности: full (подразумевано), curfreq, maxfreq, model или vendor.

Коментари:

  • Прикупља информације из /proc/cpuinfo и /sys/devices/system/cpu/[cpunum]/cpufreq/cpuinfo_max_freq;
  • Ако је специфициран CPU број и curfreq or maxfreq, враћа се нумеричка вредност (Hz).

Пример:

system.hw.cpu[0,vendor] → AuthenticAMD
system.hw.devices[<type>]


Списак PCI или USB уређаја.
Повратна вредност: Text.
Подржане платформе: Linux.

Параметар:

  • тип - pci (подразумевано) или usb

Враћа излаз било lspci или lsusb услужног програма (извршено без икаквих параметара).

Пример:

system.hw.devices → 00:00.0 Host bridge: Advanced Micro Devices [AMD] RS780 Host Bridge
system.hw.macaddr[<interface>,<format>]


Списак MAC адреса.
Повратна вредност: String.
Подржане платформе: Linux.

Параметри:

  • интерфејс - all (подразумевано) или регуларни израз;
  • формат - full (подразумевано) или short

Коментари:

  • Листа MAC адреса интерфејса чије име одговара датом interface регуларном изразу (all листе за све интерфејсе);
  • Ако је format наведен као short, имена интерфејса и идентичне MAC адресе нису наведене.

Пример:

system.hw.macaddr["eth0$",full] → [eth0] 00:11:22:33:44:55
system.localtime[<type>]


Системско време.
Повратна вредност: Integer - са type као utc; Стринг - са type као local.
Погледајте подржане платформе.

Параметри:

  • тип - могуће вредности: utc - (подразумевано) време од епохе (00:00:00 UTC, 1. јануар 1970), мерено у секундама или local - време у 'yyyy-mm-dd,hh:mm:ss.nnn,+hh:mm' формат

Мора се користити само као пасивна провера.

Пример:

system.localtime[local] #create an item using this key and then use it to display the host time in the *Clock* dashboard widget.
system.run[command,<mode>]


Покрените наведену команду на домаћину.
Повратна вредност: Text резултат команде или 1 - са mode као nowait (без обзира на резултат команде).
Погледајте подржане платформе.

Параметри:

  • команда - команда за извршење;
  • режим - могуће вредности: wait - сачекајте крај извршења (подразумевано) или nowait - не чекајте.

Коментари:

  • Ова ставка је подразумевано онемогућена. Научите како да их омогућите;
  • Повратна вредност ставке је стандардни излаз заједно са стандардном грешком коју производи команда. Провера излазног кода се не врши;
  • Да би се исправно обрадила, повратна вредност команде мора бити типа података text. Празан резултат је такође дозвољен;
  • Повратна вредност је ограничена на 16MB (укључујући размак на крају који је скраћен); ограничења базе података такође се примењују;
  • Погледајте такође: Извршавање команде.

Пример:

system.run[ls -l /] #враћа детаљну листу датотека основног директоријума
system.stat[resource,<type>]


Статистика система.
Повратна вредност: Integer или float.
Подржане платформе: AIX.

Параметри:

  • ent - број процесорских јединица које ова партиција има право да прими (float);
  • kthr,<type> - информације о стањима нити језгра:
    r - просечан број покренутих нити језгра (float)
    b - просечан број нити језгра смештених у виртуелну меморију Ред чекања менаџера (float)
  • memory,<type> - информације о коришћењу виртуелне и стварне меморије:
    avm - активне виртуелне странице (integer)
    fre - величина слободне листе (integer)
  • page,<type> - информације о грешкама странице и активности пагинације:
    fi - учитавање страница из датотеке по секунди (float)
    fo - избацивање страница у датотеку по секунди (float)
    pi - странице учитане из простора за пагинацију (float)
    po - странице избачене у простор за пагинацију (float)
    fr - ослобођене странице (замена страница) (float)
    sr - странице скениране алгоритмом за замену страница (float)
  • faults,<type> - замка и стопа прекида:
    in - уређај прекида (float)
    sy - системски позиви (float)
    cs - промене контекста у језгру (float)
  • cpu,<type> - расподела процента коришћења процесорског времена:
    us - корисничко време (float)
    sy - системско време (float)
    id - време мировања (float)
    wa - време мировања током којег је систем имао нерешени захтев(е) за disk/NFS I/O (float)
    pc - број утрошених физичких процесора (float)
    ec - проценат потрошеног овлашћеног капацитета (float)
    lbusy - означава проценат искоришћености логичког(их) процесора који се десио током извршавања на нивоу корисника и система (float)
    app - означава доступне физичке процесоре у дељеном pool-у (float)
  • disk,<type> - статистика диска:
    bps - означава количину података пренетих (прочитаних или уписаних) на диск у бајтовима у секунди (integer)
    tps - означава број преноса у секунди који су издати на физичком диску/траци (float)

Коментари:

  • Обратите пажњу на следећа ограничења у овим ставкама:
    system.stat[cpu,app] - подржано само на AIX LPAR типу "Shared"
    system.stat[cpu,ec] – подржано на AIX LPAR типу "Shared" and "Dedicated" ("Dedicated" увек враћа 100 (процената))
    system.stat[cpu,lbusy] - подржано само на AIX LPAR типу "Shared"
    system.stat[cpu,pc] - подржано на AIX LPAR типу "Shared" and "Dedicated"
    system.stat[ent] - подржано на AIX LPAR типу "Shared" and "Dedicated"
system.sw.arch


Информације о архитектури софтвера.
Повратна вредност: Стринг.
Погледајте подржане платформе.

Информације се добијају из функције uname().

Пример:

system.sw.arch → i686
system.sw.os[<info>]


Информације о оперативном систему.
Повратна вредност: String.
Подржане платформе: Linux, Windows.

Параметар:

  • инфо - могуће вредности: full (подразумевано), short, или name

Информације су добијене од (имајте на уму да нису све датотеке и опције присутне у свим дистрибуцијама):

  • /proc/version (full) на Linux-у;
  • /proc/version_signature (short) на Linux-у;
  • параметар PRETTY_NAME из /etc/os-release на Linux системима који га подржавају или /etc/issue.net (name);
  • кључ регистра HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion на Windows-у.

Примери:

system.sw.os[short] → Ubuntu 2.6.35-28.50-generic 2.6.35.11
       system.sw.os[full] → [s|Windows 10 Enterprise 22621.1.asd64fre.ni_release.220506-1250 Build 22621.963]
system.sw.os.get


Детаљне информације о оперативном систему (верзија, тип, назив дистрибуције, мања и главна верзија, итд.).
Повратна вредност: JSON објекат.
Подржане платформе: Linux, Windows.

system.sw.packages[<regexp>,<manager>,<format>]


Листа инсталираних пакета.
Повратна вредност: Text.
Подржане платформе: Linux.

Параметри:

  • regexp - all (подразумевано) или регуларни израз;
  • manager - all (подразумевано) или менаџер пакета;
  • format - full (подразумевано) или short.

Коментари:

  • Листа (абецедно) инсталираних пакета чије име одговара датом регуларном изразу (all их све наводи);
  • Подржани менаџери пакета (извршена команда):
    dpkg (dpkg --get-selections)
    pkgtool (ls /var/log/packages)
    rpm (rpm -qa)
    pacman (pacman -Q)
    portage
  • Ако је format наведен као full, пакети се групишу по менаџерима пакета (сваки менаџер у посебном реду који почиње његовим именом у угластим заградама);
  • Ако је format наведен као кратак, пакети се не групишу и наводе се у једном реду.

Пример:

system.sw.packages[mini,dpkg,short] → python-minimal, python2.6-minimal, ubuntu-minimal
system.sw.packages.get[<regexp>,<manager>]


Детаљан списак инсталираних пакета.
Повратна вредност: JSON објекат.
Подржане платформе: Linux.

Параметри:

  • regexp - all (подразумевано) или регуларни израз;
  • manager - all (подразумевано) или менаџер пакета (могуће вредности: rpm, dpkg, pkgtool, pacman, или portage).

Коментари:

  • Враћа неформатирани JSON са инсталираним пакетима чије име одговара датом регуларном изразу;
  • Излаз је низ објеката од којих сваки садржи следеће кључеве: name, manager, version, size, architecture, buildtime и installtime (погледајте више детаља).
system.swap.in[<device>,<type>]


Статистика замене (са уређаја у меморију).
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, OpenBSD.

Параметри:

  • device - наведите уређај који се користи за замену (само за Linux) или all (подразумевано);
  • type - могуће вредности: count (број замена, подразумевано на не-Linux платформама), sectors (сектори су замењени) или pages (странице замењене, подразумевано на Linux-у).

Коментари:

  • Извор ових информација је:
    /proc/swaps, /proc/partitions, /proc/stat (Linux 2.4)
    /proc/swaps, /proc/diskstats, /proc/vmstat (Linux 2.6)
  • Имајте на уму да ће pages радити само ако уређај није наведен;
  • Параметар типа sectors је подржан само на Linux-у.

Пример:

system.swap.in[,pages]
system.swap.out[<device>,<type>]


Статистика замене (из меморије на уређај).
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, OpenBSD.

Параметри:

  • device - наведите уређај који се користи за замену (само за Linux) или all (подразумевано);
  • type - могуће вредности: count (број замена, подразумевано на не-Linux платформама), sectors (сектори замењени) или pages (странице замењене, подразумевано на Linux-у).

Коментари:

  • Извор ових информација је:
    /proc/swaps, /proc/partitions, /proc/stat (Linux 2.4)
    /proc/swaps, /proc/diskstats, /proc/vmstat (Linux 2.6)
  • Имајте на уму да ће pages радити само ако уређај није наведен;
  • Параметар типа sectors је подржан само на Linux-у.

Пример:

system.swap.out[,pages]
system.swap.size[<device>,<type>]


Величина разменљивог простора у бајтовима или у процентима од укупног броја.
Повратна вредност: Integer - за бајтове; Float - за проценте.
Подржане платформе: Linux, FreeBSD, Solaris, AIX, OpenBSD.

Параметри:

  • device - наведите уређај који се користи за замену (само FreeBSD) или all (подразумевано);
  • type - могуће вредности: free (бесплатан простор за замену, подразумевано), pfree (слободан простор за замену, у процентима), pused (искоришћен простор за замену, у процентима), total (укупни размењиви простор), или used (искоришћени размењиви простор).

Коментари:

  • Имајте на уму да pfree, pused нису подржани на Windows-у ако је величина размене 0;
  • Ако уређај није наведен, Zabbix агент ће узети у обзир само swap уређаје (датотеке), физичка меморија ће бити занемарена. На пример, на Solaris системима команда swap -s укључује део физичке меморије и swap уређаја (за разлику од swap -l).

Пример:

system.swap.size[,pfree] → free swap space percentage
system.uname


Идентификација система.
Повратна вредност: String.
Погледајте подржане платформе.

Коментари:

  • На UNIX-у вредност за ову ставку се добија системским позивом uname();
  • На Windows-у ставка враћа архитектуру ОС-а, док на UNIX-у враћа архитектуру CPU-а.

Примери:

 system.uname → FreeBSD localhost 4.2-RELEASE FreeBSD 4.2-RELEASE #0: Mon Nov i386
        system.uname → Windows ZABBIX-WIN 6.0.6001 Microsoft® Windows Server® 2008 Standard Service Pack 1 x86
system.uptime


Време рада система у секундама.
Повратна вредност: Integer.
Подржане платформе: Linux, FreeBSD, Solaris, AIX, MacOS X, OpenBSD, NetBSD.

У конфигурацији ставке, користите јединице s или uptime да бисте добили читљиве вредности.

system.users.num


Број пријављених корисника.
Повратна вредност: Integer.
Погледајте подржане платформе.

Команда who се користи на страни агента за добијање вредности.

vfs.dev.discovery


Списак блок уређаја и њихов тип. Користи се за откривање ниског нивоа.
Повратна вредност: JSON објекат.
Подржане платформе: Linux.

vfs.dev.read[<device>,<type>,<mode>]


Статистика читања диска.
Повратна вредност: Integer - са type у sectors, operations, bytes; Float - са type у sps, ops, bps.
Подржане платформе: Linux, FreeBSD, Solaris, AIX, OpenBSD.

Параметри:

  • уређај - диск уређај (подразумевано је all 3);
  • тип - могуће вредности: sectors, operations, bytes, sps, ops, или bps (sps, ops, bps означавају: секторе , операције, бајтове у секунди, респективно);
  • режим - могуће вредности: avg1 (једноминутни просек, подразумевано), avg5, или avg15. Овај параметар је подржан само са type у: sps, ops, bps.

Коментари:

  • Ако користите интервал ажурирања од три сата или више2, ова ставка ће увек враћати '0';
  • Параметри типа sectors и sps су подржани само на Linux-у;
  • Параметар типа ops је подржан само на Linux-у и FreeBSD-у;
  • Параметар типа bps је подржан само на FreeBSD-у;
  • Параметар типа bytes је подржан само на FreeBSD, Solaris, AIX, OpenBSD;
  • Параметар mode је подржан само на Linux-у, FreeBSD-у;
  • Можете користити релативна имена уређаја (на пример, sda) као и опциони /dev/ префикс (на пример, /dev/sda);
  • LVM логички волумени су подржани;
  • Подразумеване вредности параметра 'type' за различите ОС:
    AIX - операције
    FreeBSD - bps
    Linux - sps
    *OpenBSD** - operations
    Solaris - bytes
  • sps, ops и bps на подржаним платформама је ограничено на 1024 уређаја (1023 појединачна и један за all).

Пример:

vfs.dev.read[,operations]
vfs.dev.write[<device>,<type>,<mode>]


Статистика писања на диску.
Повратна вредност: Integer - са type у sectors, operations, bytes; Float - са type у sps, ops, bps.
Подржане платформе: Linux, FreeBSD, Solaris, AIX, OpenBSD.

Параметри:

  • уређај - диск уређај (подразумевано је all 3);
  • тип - могуће вредности: sectors, operations, bytes, sps, ops, or bps (sps, ops, bps означавају: секторе , операције, бајтове у секунди, респективно);
  • режим - могуће вредности: avg1 (једноминутни просек, подразумевано), avg5, или avg15. Овај параметар је подржан само са type у: sps, ops, bps.

Коментари:

  • Ако користите интервал ажурирања од три сата или више2, ова ставка ће увек враћати '0';
  • Параметри типа sectors и sps су подржани само на Linux-у;
  • Параметар типа ops је подржан само на Linux-у и FreeBSD-у;
  • Параметар типа bps је подржан само на FreeBSD-у;
  • Параметар типа bytes је подржан само на FreeBSD, Solaris, AIX, OpenBSD;
  • Параметар mode је подржан само на Linux-у, FreeBSD-у;
  • Можете користити релативна имена уређаја (на пример, sda) као и опциони /dev/ префикс (на пример, /dev/sda);
  • LVM логички волумени су подржани;
  • Подразумеване вредности параметра 'type' за различите ОС:
    AIX - operations
    FreeBSD - bps
    Linux - sps
    OpenBSD - operations
    Solaris - bytes
  • sps, ops и bp на подржаним платформама је ограничен на 1024 уређаја (1023 појединачна и један за all).

Пример:

vfs.dev.write[,operations]
vfs.dir.count[dir,<regex incl>,<regex excl>,<types incl>,<types excl>,<max depth>,<min size>,<max size>,<min age>,<max age>,<regex excl dir>]


Број уноса у директоријум.
Повратна вредност: Integer.
Погледајте подржане платформе.

Параметри:

  • dir - апсолутна путања до директоријума;
  • regex incl - регуларни израз који описује образац имена ентитета (датотеке, директоријума, симболичке везе) који треба укључити; укључи све ако је празно (подразумевана вредност);
  • regex excl - регуларни израз који описује образац имена ентитета (датотека, директоријум, симболичка веза) за изузимање; не искључује ниједан ако је празан (подразумевана вредност);
  • types incl - типови уноса у директоријум за бројање, могуће вредности: file - обична датотека, dir - поддиректоријум, sym - симболичка веза, sock - сокет, bdev - блок уређај, cdev - уређај са карактерима, fifo - FIFO, dev - синоним за "bdev,cdev", all - сви типови (подразумевано), тј. "file,dir,sym,sock,bdev,cdev,fifo". Више типова мора бити одвојено зарезом и стављено под наводнике.
  • types excl - типови уноса у директоријум (погледајте types incl) који се НЕ рачунају. Ако је неки тип уноса и у types incl и types excl, уноси у директоријуму овог типа се НЕ рачунају.
  • максимална дубина - максимална дубина поддиректоријума које треба прећи:
    -1 (подразумевано) - неограничено,
    0 - без спуштања у поддиректоријуме.
  • минимална величина - минимална величина (у бајтовима) за датотеку која се рачуна. Мање датотеке се неће рачунати. Меморијски суфикси се могу користити.
  • максимална величина - максимална величина (у бајтовима) за датотеку која се рачуна. Веће датотеке се неће рачунати. Меморијски суфикси се могу користити.
  • минимална старост - минимална старост (у секундама) уноса у диреректоријум која се рачуна. Новији уноси се неће рачунати. Временски суфикси се могу користити.
  • максимална старост - максимална старост (у секундама) уноса у директоријум која се рачуна. Уноси те старости и старији неће се рачунати (време измене). Временски суфикси се могу користити.
  • regex excl dir - регуларни израз који описује образац имена директоријума који треба искључити. Сав садржај директоријума ће бити искључен (за разлику од regex_excl)

Коментари:

  • Варијабле окружења, нпр. %APP_HOME%, $HOME и %TEMP% нису подржани;
  • Псеудо-директоријуми "." и ".." се никада не рачунају;
  • Симболичке везе се никада не прате за обилазак директоријума;
  • И regex incl и regex excl се примењују на датотеке и директоријуме приликом израчунавања броја уноса, али се занемарују када се бирају поддиректоријуми за кретање (ако regex inclis “(?i)\^.+\\.zip$” иmax depth` нису подешени, тада ће се обићи сви поддиректоријуми, али ће се рачунати само датотеке типа zip).
  • Време извршења је ограничено вредношћу временског ограничења у агенту конфигурација (3 sec). Пошто обилазак преко директоријума може потрајати дуже од тога, подаци неће бити враћени и ставка ће постати неподржана. Делимичан резултат се неће вратити.
  • Када филтрирате по величини, само обичне датотеке имају значајне величине. Под Linux-ом и BSD-ом, директоријуми такође имају величине које нису нула (обично неколико Kb). Уређаји имају нулте величине, нпр. величина /dev/sda1 не одражава одговарајућу величину партиције. Стога, када користите <min_size> and <max_size>, препоручљиво је навести <types_incl> као "file", да бисте избегли изненађења.

Примери:

vfs.dir.count[/dev] #monitors the number of devices in /dev (Linux)
       vfs.dir.count["C:\Users\ADMINI~1\AppData\Local\Temp"] #прати број датотека у привременом директоријуму
vfs.dir.get[dir,<regex incl>,<regex excl>,<types incl>,<types excl>,<max depth>,<min size>,<max size>,<min age>,<max age>,<regex excl dir>]


Листа уноса у директоријум.
Повратна вредност: * JSON објекат*.
Погледајте подржане платформе.

Параметри:

  • dir - апсолутна путања до директоријума;
  • regex incl - регуларни израз који описује образац имена ентитета (датотеке, директоријума, симболичке везе) који треба укључити; укључи све ако је празно (подразумевана вредност);
  • regex excl - регуларни израз који описује образац имена ентитета (датотека, директоријум, симболичка веза) за изузимање; не искључује ниједан ако је празан (подразумевана вредност);
  • types incl - типови уноса директоријума за листу, могуће вредности: file - обична датотека, dir - поддиректоријум, sym - симболичка веза, sock - сокет, bdev - блок уређај, cdev - уређај карактера, fifo - FIFO, dev - синоним за "bdev,cdev", all - сви типови (подразумевано), тј. "file,dir,sym,sock,bdev,cdev,fifo". Више типова мора бити одвојено зарезом и стављено под наводнике.
  • types excl - типови уноса у директоријум (погледајте types incl) на НЕ листу. Ако је неки тип уноса у types incl и types excl, уноси у директоријуму овог типа НИСУ наведени.
  • максимална дубина - максимална дубина поддиректоријума које треба прећи:
    -1 (подразумевано) - неограничено,
    0 - без спуштања у поддиректоријуме.
  • минимална величина - минимална величина (у бајтовима) за датотеку која ће бити наведена. Мање датотеке неће бити наведене. Меморијски суфикси се могу користити.
  • максимална величина - максимална величина (у бајтовима) датотеке која ће бити наведена. Веће датотеке неће бити наведене. Меморијски суфикси се могу користити.
  • минимална старост - минимална старост (у секундама) уноса у дневник који треба да буде наведен. Новији уноси неће бити наведени. Временски суфикси се могу користити.
  • максимална старост - максимална старост (у секундама) уноса у директоријум који ће бити наведен. Уноси те старости и старији уноси неће бити наведени (време измене). Временски суфикси се могу користити.
  • regex excl dir - регуларни израз који описује образац имена директоријума који треба искључити. Сав садржај директоријума ће бити искључен (за разлику од regex excl)

Коментари:

  • Варијабле окружења, нпр. %APP_HOME%, $HOME и %TEMP% нису подржани;
  • Псеудо-директоријими "." и ".." никада нису наведени;
  • Симболичке везе се никада не прате за обилазак директоријума;
  • И regex incl и regex excl се примењују на датотеке и директоријуме приликом генерисања листе уноса, али се занемарују када се бирају поддиректоријуми за кретање (ако јеregex incl “(?i)^.+\.zip$” и max depth није подешена, тада ће се обићи сви поддиректоријуми, али ће се рачунати само датотеке типа zip).
  • Време извршења је ограничено вредношћу временског ограничења у агенту конфигурација. Пошто обилазак преко директоријума може потрајати дуже од тога, подаци неће бити враћени и ставка ће постати неподржана. Делимична листа неће бити враћена.
  • Када филтрирате по величини, само обичне датотеке имају значајне величине. Под Linux-ом и BSD-ом, директоријуми такође имају величине које нису нула (обично неколико Kb). Уређаји имају нулте величине, нпр. величина /dev/sda1 не одражава одговарајућу величину партиције. Стога, када користите min size и max size, препоручљиво је да наведете types incl као "file", да бисте избегли изненађења.

Примери:

vfs.dir.get[/dev] #преузима листу уређаја у /dev (Linux)
       vfs.dir.get["C:\Users\ADMINI~1\AppData\Local\Temp"] #преузима листу датотека у привременом директоријуму
vfs.dir.size[dir,<regex incl>,<regex excl>,<mode>,<max depth>,<regex excl dir>]


Величина директоријума (у бајтовима).
Повратна вредност: Integer.
Подржане платформе: Linux. Ставка може радити на другим UNIX-оликим платформама.

Параметри:

  • dir - апсолутна путања до директоријума;
  • regex incl - регуларни израз који описује образац имена ентитета (датотеке, директоријума, симболичке везе) који треба укључити; укључује све ако је празно (подразумевана вредност);
  • regex excl - регуларни израз који описује образац имена ентитета (датотека, директоријум, симболичка веза) за изузимање; не искључује ниједан ако је празан (подразумевана вредност);
  • mode - могуће вредности: apparent (подразумевано) - добија очигледне величине датотека уместо употребе диска (ради као du -sb dir), disk - добија коришћење диска (понаша се као du -s -B1 dir). За разлику од команде du, ставка vfs.dir.size узима у обзир скривене датотеке приликом израчунавања величине директоријума (делује као du -sb .[^.]** унутар dir).
  • max depth - максимална дубина поддиректоријума за прелазак: -1 (подразумевано) - неограничено, 0 - без спуштања у поддиректоријуме.
  • regex excl dir - регуларни израз који описује образац имена директоријума који треба искључити. Сав садржај директоријума ће бити искључен (за разлику од regex excl)

Коментари:

  • Израчунавају се само директорији са најмање дозволом за читање за zabbix корисника. За директоријуме само са дозволом за читање, израчунава се величина самог директоријума. Директоријуми са дозволама за читање и извршавање се израчунавају укључујући садржај.
  • Са великим директоријумима или спорим дисковима, ова ставка може да истекне због Timeout подешавања у агент и сервер/прокси конфигурационе датотеке. По потреби повећајте временско ограничење.
  • Ограничење величине датотеке зависи од подршке за велике датотеке.

Примери:

vfs.dir.size[/tmp,log] #израчунава величину свих датотека у /tmp чији називи садрже 'log'
       vfs.dir.size[/tmp,log,^.+\.old$] #израчунава величину свих датотека у /tmp који садрже 'log' у својим именима, искључујући датотеке чији се називи завршавају са '. old'
vfs.file.cksum[file,<mode>]


Контролна сума датотеке, израчуната UNIX cksum алгоритмом.
Повратна вредност: Integer - са mode као crc32, String - са mode као md5, sha256.
Погледајте подржане платформе.

Параметри:

  • датотека - комплетна путања до датотеке;
  • режим - crc32 (подразумевано), md5, или sha256.

Ограничење величине датотеке зависи од подршке за велике датотеке.

Пример:

vfs.file.cksum[/etc/passwd]

Примери враћених вредности (crc32/md5/sha256 респективно):

675436101
       9845acf68b73991eb7fd7ee0ded23c44
       ae67546e4aac995e5c921042d0cf0f1f7147703aa42bfbfb65404b30f238f2dc
vfs.file.contents[file,<encoding>]


Преузимање садржаја датотеке7.
Повратна вредност: Text.
Погледајте подржане платформе.

Параметри:

  • датотека - комплетна путања до датотеке;
  • кодирање - кодна страница идентификатор.

Коментари:

  • Повратна вредност је ограничена на 16MB (укључујући размак на крају који је скраћен); ограничења базе података такође се примењују;
  • Празан стринг се враћа ако је датотека празна или садржи само LF/CR карактере;
  • Ознака реда бајтова (BOM) је искључена из излаза.

Пример:

vfs.file.contents[/etc/passwd]
vfs.file.exists[file,<types incl>,<types excl>]


Проверава да ли датотека постоји.
Повратна вредност: 0 - није пронађено; 1 - датотека наведеног типа постоји.
Погледајте подржане платформе.

Параметри:

  • датотека - комплетна путања до датотеке;
  • types incl - листа типова датотека које треба укључити, могуће вредности: file (обична датотека, подразумевана (ако types_excl није подешена)), dir (директоријум), sym (симболична веза), sock (socket), bdev (блок уређај), cdev (уређај карактера), fifo (FIFO), dev (синоним за "bdev,cdev"), all (сви поменути типови, подразумевано ако је подешено types_excl).
  • types excl - листа типова датотека које треба искључити, погледајте types_incl за могуће вредности (подразумевано ниједан тип није искључен)

Коментари:

  • Више типова мора бити одвојено зарезом и цео скуп под наводницима "";
  • Ако је исти тип и у <types_incl> и <types_excl>, датотеке овог типа су искључене;
  • Ограничење величине датотеке зависи од подршке за велике датотеке.

Примери:

vfs.file.exists[/tmp/application.pid]
       vfs.file.exists[/tmp/application.pid,"file,dir,sym"]
       vfs.file.exists[/tmp/application_dir,dir]
vfs.file.get[file]


Враћа информације о датотеци.
Повратна вредност: JSON објекат.
Погледајте подржане платформе.

Параметар:

  • датотека - kompletna путања до датотеке

Коментари:

  • Подржани типови датотека на UNIX-оликим системима: обична датотека, директоријум, симболичка веза, socket, блок уређај, уређај карактера, FIFO.
  • Ограничење величине датотеке зависи од подршке за велике датотеке.

Пример:

vfs.file.get[/etc/passwd] #return a JSON with information about the /etc/passwd file (type, user, permissions, SID, uid etc)
vfs.file.md5sum[file]


MD5 контролни збир датотеке.
Повратна вредност: низ карактера (MD5 хеш датотеке).
Погледајте подржане платформе.

Параметар:

  • датотека - комплетна путања до датотеке

Ограничење величине датотеке зависи од подршке за велике датотеке.

Пример:

vfs.file.md5sum[/usr/local/etc/zabbix_agentd.conf]

Пример враћене вредности:

b5052decb577e0fffd622d6ddc017e82
vfs.file.owner[file,<ownertype>,<resulttype>]


Враћа власника датотеке.
Повратна вредност: String.
Погледајте подржане платформе.

Параметри:

  • датотека - комплетна путања до датотеке;
  • ownertype - user (подразумевано) или group (Unix само);
  • врста резултата - name (подразумевано) или id; за id - врати uid/gid на Unix-у, SID на Windows-у.

Ограничење величине датотеке зависи од подршке за велике датотеке.

Примери:

vfs.file.owner[/tmp/zabbix_server.log] #return the file owner of /tmp/zabbix_server.log
       vfs.file.owner[/tmp/zabbix_server.log,,id] #return the file owner ID of /tmp/zabbix_server.log
vfs.file.permissions[file]


Врати 4-цифрени стринг који садржи октални број са UNIX дозволама.
Повратна вредност: String.
Подржане платформе: Linux. Ставка може радити на другим UNIX-оликим платформама.

Параметри:

  • датотека - комплетна путања до датотеке

Ограничење величине датотеке зависи од подршке за велике датотеке.

Пример:

vfs.file.permissions[/etc/passwd] #return permissions of /etc/passwd, на пример, '0644'
vfs.file.regexp[file,regexp,<encoding>,<start line>,<end line>,<output>]


Преузми стринг у датотеци7.
Повратна вредност: Линија која садржи подударни низ или како је наведено опциони параметaр output.
Погледајте подржане платформе.

Параметри:

  • датотека - потпуна путања до датотеке;
  • regexp - регуларни израз који описује тражени образац;
  • кодирање - кодна страница идентификатор;
  • почетна линија - број првог реда за претрагу (први ред фајла подразумевано);
  • последња линија - број последњег реда за претрагу (подразумевано последњи ред датотеке);
  • излаз - опциони шаблон за форматирање излаза. \0 излазна секвенца се замењује одговарајућим делом текста (од првог карактера где подударање почиње до карактера где се подударање завршава) док је \N (где је N=1...9) излазна секвенца се замењује са Н-том подударном групом (или празним стрингом ако N премашује број нађених група).

Коментари:

  • Ограничење величине датотеке зависи од подршке за велике датотеке.
  • Враћа се само прва одговарајућа линија;
  • Враћа се празан стринг ако ниједна линија не одговара изразу;
  • Ознака реда бајтова (BOM) је искључена из излаза;
  • Екстракција садржаја помоћу параметра output се одвија на агенту.

Примери:

vfs.file.regexp[/etc/passwd,zabbix]
       vfs.file.regexp[/path/to/some/file,"([0-9]+)$",,3,5,\1]
       vfs.file.regexp[/etc/passwd,"^zabbix:.:([0-9]+)",,,,\1] → добијање ID-ија корисника *zabbix*
vfs.file.regmatch[file,regexp,<encoding>,<start line>,<end line>]


Пронађите стринг у датотеци7.
Повратне вредности: 0 - подударање није пронађено; 1 - пронађено.
Погледајте подржане платформе.

Параметри:

  • ** file** - комплетна путања до датотеке;
  • regexp - обичан израз који описује тражени образац;
  • encoding - кодна страница идентификатор;
  • start line - број првог реда за претрагу (први ред датотеке подразумевано);
  • end line - број последњег реда за претрагу (подразумевано последњи ред датотеке).

Коментари:

Пример:

vfs.file.regmatch[/var/log/app.log,error]
vfs.file.size[file,<mode>]


Величина датотеке (у бајтовима).
Повратна вредност: Integer.
Погледајте подржане платформе.

Параметри:

  • датотека - комплетна путања до датотеке;
  • режим - могуће вредности: bytes (подразумевано) или lines (броје се и празне линије).

Коментари:

Пример:

vfs.file.size[/var/log/syslog]
vfs.file.time[file,<mode>]


Информације о времену датотеке.
Повратна вредност: Integer (Unix временска ознака).
Погледајте подржане платформе.

Параметри:

  • датотека - комплетна путања до датотеке;
  • режим - могуће вредности:
    modify (подразумевано) - последњи пут измене садржаја датотеке,
    access - последње време читања датотеке,
    change - последњи пут када сте променили својства датотеке

Ограничење величине датотеке зависи од подршке за велике датотеке.

Пример:

vfs.file.time[/etc/passwd,modify]
vfs.fs.discovery


Листа монтираних система датотека са њиховим типом и опцијама монтирања. Користи се за откривање ниског нивоа.
Повратна вредност: JSON објекат.
Подржане платформе: Linux, FreeBSD, Solaris, HP-UX, AIX, MacOS X, OpenBSD, NetBSD.

vfs.fs.get


Листа монтираних система датотека са њиховим типом, расположивим простором на диску, inode статистикама и опцијама монтирања. Може се користити за откривање ниског нивоа.
Повратна вредност: JSON објекат.
Подржане платформе: Linux, FreeBSD, Solaris, HP-UX, AIX, MacOS X, OpenBSD, NetBSD.

Коментари:

  • Системи датотека са бројем inode-а једнаким нули, што може бити случај за системе датотека са динамичким inode-ом (нпр. btrfs), такође су пријављени;
  • Погледајте такође: Откривање монтираних система датотека.
vfs.fs.inode[fs,<mode>]


Број или проценат inode-а.
Повратна вредност: Integer - за број; Float - за проценат.
Погледајте подржане платформе.

Параметри:

  • fs - систем датотека;
  • mode - могуће вредности: total (подразумевано), free, used, pfree (бесплатно, проценат) или pused (коришћено, проценат).

Ако је број inode-а једнак нули, што може бити случај за системе датотека са динамичким inode-има (нпр. btrfs), вредности pfree/pused ће бити пријављене као "100" и "0" респективно.

Пример:

vfs.fs.inode[/,pfree]
vfs.fs.size[fs,<mode>]


Простор на диску у бајтовима или у процентима од укупног.
Повратна вредност: Integer - за бајтове; Float - за проценат.
Погледајте подржане платформе.

Параметри:

  • fs - систем датотека;
  • mode - могуће вредности: total (подразумевано), free, used, pfree (бесплатно, проценат) или pused (коришћено, проценат).

Коментари:

  • Ако систем датотека није монтиран, враћа величину локалног система датотека где се налази тачка монтирања;
  • Резервисани простор система датотека се узима у обзир и није укључен када се користи free режим.

Пример:

vfs.fs.size[/tmp,free]
vm.memory.size[<mode>]


Величина меморије у бајтовима или у процентима од укупног броја.
Повратна вредност: Integer - за бајтове; Float - за проценат.
Погледајте подржане платформе.

Параметар:

  • режим - могуће вредности: total (подразумевано), active, anon, buffers, cached, exec, file, free, inactive, pinned, shared, slab, wired, used, pused (коришћено, проценат), available, или pavailable (доступно, проценат).

Коментари:

  • Ова ставка прихвата три категорије параметара:
    1) total - укупна количина меморије
    2) типови меморије специфични за платформу: active, anon, buffers, cached, exec, file, free, inactive, pinned, shared, slab, wired
    3) процене на нивоу корисника колико се меморије користи и доступно је: used, pused, available, pavailable
  • Параметар active режима је подржан само на FreeBSD, HP-UX, MacOS X, OpenBSD, NetBSD;
  • Параметри режима anon, exec, file су подржани само на NetBSD-у;
  • Параметар режима buffers је подржан само на Linux, FreeBSD, OpenBSD, NetBSD;
  • Параметар режима cached је подржан само на Linux, FreeBSD, AIX, OpenBSD, NetBSD;
  • Параметри режима inactive, wired су подржани само на FreeBSD, MacOS X, OpenBSD, NetBSD;
  • Параметар режима pinned је подржан само на AIX-у;
  • Параметар shared режима је подржан само на 2.4, FreeBSD, OpenBSD, NetBSD;
  • Погледајте такође додатне детаље за ову ставку.

Пример:

vm.memory.size[pavailable]
web.page.get[host,<path>,<port>]


Преузмите садржај веб странице.
Повратна вредност: Извор веб странице као текст (укључујући заглавља).
Погледајте подржане платформе.

Параметри:

  • host - име домаћина или URL (као scheme://host:port/path, где је само host обавезан). Дозвољене URL шеме: http, https4. Шема која недостаје биће третирана као http. Ако је URL наведен, path и port морају бити празни. Навођење корисничког имена/лозинке приликом повезивања на сервере који захтевају аутентификацију, на пример: http://user:[email protected] могуће је само уз подршку за cURL support 4 . Punycode је подржан у именима домаћина.
  • путања - путања до HTML документа (подразумевано је /);
  • порт - број порта (подразумевано је 80 за HTTP)

Коментари:

  • Ова ставка постаје неподржана ако ресурс наведен у host не постоји или је недоступан;
  • host може бити име домаћина, име домена, IPv4 или IPv6 адреса. Али за IPv6 адресу Zabbix агент мора бити компајлиран са омогућеном подршком за IPv6.

Примери:

web.page.get[www.example.com,index.php,80]
       web.page.get[https://www.example.com]
       web.page.get[https://blog.example.com/?s=zabbix]
       web.page.get[localhost:80]
       web.page.get["[::1]/server-status"]
web.page.perf[host,<path>,<port>]


Време учитавања целе веб странице (у секундама).
Повратна вредност: Float.
Погледајте подржане платформе.

Параметри:

  • host - име домаћина или URL (као scheme://host:port/path, где је само host обавезан). Дозвољене URL шеме: http, https4. Шема која недостаје биће третирана као http. Ако је URL наведен, path и port морају бити празни. Навођење корисничког имена/лозинке приликом повезивања на сервере који захтевају аутентификацију, на пример: http://user:[email protected] могуће је само уз подршку за cURL support 4. Punycode је подржан у именима домаћина.
  • путања - путања до HTML документа (подразумевано је /);
  • порт - број порта (подразумевано је 80 за HTTP)

Коментари:

  • Ова ставка постаје неподржана ако ресурс наведен у host не постоји или је недоступан;
  • host може бити име домаћина, име домена, IPv4 или IPv6 адреса. Али за IPv6 адресу Zabbix агент мора бити компајлиран са омогућеном подршком за IPv6.

Примери:

web.page.perf[www.example.com,index.php,80]
       web.page.perf[https://www.example.com]
web.page.regexp[host,<path>,<port>,regexp,<length>,<output>]


Пронађите низ на веб страници.
Повратна вредност: стринг који се подудара, или као што је наведено опционим параметром output.
Погледајте подржане платформе.

Параметри:

  • домаћин - име домаћина или URL (као scheme://host:port/path, где је само host обавезан). Дозвољене URL шеме: http, https4. Шема која недостаје биће третирана као http. Ако је URL наведен, path и port морају бити празни. Навођење корисничког имена/лозинке приликом повезивања на сервере који захтевају аутентификацију, на пример: http://user:[email protected] могуће је само уз подршку за cURL 4 . Punycode је подржан у именима домаћина.
  • путања - путања до HTML документа (подразумевано је /);
  • порт - број порта (подразумевано је 80 за HTTP)
  • regexp - регуларни израз који описује тражени образац;
  • дужина - максималан број карактера за враћање;
  • излаз - опциони шаблон за форматирање излаза. \0 излазна секвенца се замењује одговарајућим делом текста (од првог карактера где подударање почиње до карактера где се подударање завршава) док је \N (где је N=1...9) излазна секвенца се замењује са N-том подударном групом (или празним стрингом ако N премашује број ухваћених група).

Коментари:

  • Ова ставка постаје неподржана ако ресурс наведен у host не постоји или је недоступан;
  • host може бити име домаћина, име домена, IPv4 или IPv6 адреса. Али за IPv6 адресу Zabbix агент мора бити компајлиран са омогућеном подршком за IPv6.
  • Екстракција садржаја помоћу параметра output се одвија на агенту.

Примери:

web.page.regexp[www.example.com,index.php,80,OK,2]
       web.page.regexp[https://www.example.com,,,OK,2]|
agent.hostmetadata


Метаподаци домаћина агента.
Повратна вредност: String.
Погледајте подржане платформе. Враћа вредност параметара HostMetadata или [HostMetadataItem] (/manual/appendix/config/zabbix_agentd#hostmetadataitem) или је празан стринг ако ниједан није дефинисан.

agent.hostname


Име домаћина агента.
Повратна вредност: String.
Погледајте подржане платформе.

Враћа:

  • Као пасивна провера - име првог домаћина наведеног у параметру Hostname конфигурационе датотеке агента;
  • Као активна провера - име тренутног имена домаћина.
agent.ping


Провера доступности агента.
Повратна вредност: Ништа - недоступно; 1 - доступно.
Погледајте подржане платформе.

Користите функцију окидача nodata() да проверите недоступност домаћина.

agent.variant


Варијанта Zabbix агента (Zabbix агент или Zabbix агент 2).
Повратна вредност: 1 - Zabbix агент; 2 - Zabbix агент 2.
Погледајте подржане платформе.

agent.version


Верзија Zabbix агента.
Повратна вредност: String.
Погледајте подржане платформе.

Пример враћене вредности:

6.0.3
zabbix.stats[<ip>,<port>]


Враћа скуп интерних метрика Zabbix сервера или проксија на даљину.
Повратна вредност: JSON објекат.
Погледајте подржане платформе.

Параметри:

  • ip - листа IP/DNS/network маски сервера/проксија за које се даљински испитује (подразумевано је 127.0.0.1);
  • порт - порт сервера/проксија за који се даљински испитује (подразумевано је 10051)

Коментари:

  • Ова ставка враћа одабрани скуп интерних показатеља. За детаље погледајте Даљинско праћење Zabbix статистике;
  • Имајте на уму да ће захтев за статистику бити прихваћен само са адресе наведених у параметру 'StatsAllowedIP' сервер/прокси на циљној инстанци.
zabbix.stats[<ip>,<port>,queue,<from>,<to>]


Враћа број надгледаних ставки у реду које су одложене на Заббик серверу или проксију на даљину.
Повратна вредност: JSON објекат.
Погледајте подржане платформе.

Параметри:

  • ip - the IP/DNS/network маски сервера/проксија за које се даљински испитује (подразумевано је 127.0.0.1);
  • port - порт сервера/проксија за који се даљински испитује (подразумевано је 10051)
  • queue - константа (користи се онако како јесте)
  • from - одложено најмање (подразумевано је 6 секунди)
  • to - одложено највише (подразумевано је бесконачност)

Имајте на уму да ће захтев за статистику бити прихваћен само са адреса наведених у параметру 'StatsAllowedIP' сервер/прокsи на циљној инстанци.

Фусноте

1Напомена специфична за Linux. Zabbix агент мора имати приступ само за читање систему датотека /proc. Patch-еви језгра са www.grsecurity.org ограничавају права приступа корисника без привилегија.

2 vfs.dev.read[], vfs.dev.write[]: Zabbix агент ће се прекинути "застареле" везе уређаја ако се вредностима ставки не приступа дуже од 3 сата. Ово се може десити ако систем има уређаје са динамичким променама путања или ако се уређај ручно уклони. Имајте на уму и то да ове ставке, ако користе интервал ажурирања од 3 сата или више, увек ће врати '0'.

3 vfs.dev.read[], vfs.dev.write[]: Ако се подразумевано користи all за први параметар тада ће кључ вратити збирну статистику, укључујући све блок уређаје као што су sda, sdb и њихове партиције (sda1, sda2, sdb3...) и више уређаја (MD raid) заснованих на тим блоковима уређаја/партиција и логичких волумена (LVM) заснованих на тим блоковима уређаји/партиције. У таквим случајевима треба узети у обзир враћене вредности само као релативна вредност (динамичим у времену) али не и као апсолутне вредности.

4 SSL (HTTPS) је подржан само ако је агент компајлиран са cURL подршком. У супротном, ставка ће постати неподржана.

5 Вредности bytes и errors нису подржане за интерфејсе повратне петље на Solaris системима до укључујући Solaris 10 6/06 јер статистика бајтова, грешака и коришћења не чува и/или пријављивање од стране језгра. Међутим, ако надгледате Solaris систем преко net-snmp-а, вредности могу бити враћене пошто net-snmp носи застарели код из cmu-snmp-а који датира још од 1997. године који, ако не успе да прочита вредности бајтова из статистике интерфејса, враћа бројач пакета (који постоји на интерфејсима повратне петље) помножен са произвољном вредношћу од 308. Ово чини претпоставку да је просечна дужина пакета 308 октета, што је веома груба процена пошто је MTU ограничење на Solaris системима за интерфејсе повратне петље 8892 бајта. Не треба претпоставити да су ове вредности тачне или чак ни приближно тачне. Они су гости. Zabbix агент не ради никакав посао нагађања, али net-snmp ће вратити вредност за ова поља.

6 Командна линија на Solaris-у, добијена из /proc/pid/psinfo,, ограничена је на 80 бајтова и садржи командну линију каква је била када је процес покренут.

7 `vfs.file.contents[], vfs.file.regexp[], vfs.file.regmatch[] ставке се могу користити за преузимање садржаја датотеке. Ако желите да ограничите приступ одређеним датотекама са осетљивим информацијама, покрените Zabbix агента под корисником који нема приступне дозволе за преглед ових датотека.

Коришћење алата са командне линије

Имајте на уму да када тестирате или користите кључеве ставки са zabbix_agentd или zabbix_get из командне линије треба узети у обзир и shell синтаксу.

На пример, ако се одређени параметар кључа мора ставити под двоструке наводнике морате експлицитно да избегнете двоструке наводнике, иначе ће их shell исећи као специјалне карактере и неће бити прослеђени Zabbix алату.

Примери:

zabbix_agentd -t 'vfs.dir.count[/var/log,,,"file,dir",,0]'
       
       zabbix_agentd -t vfs.dir.count[/var/log,,,\"file,dir\",,0]

Подешавања кодирања

Да бисте били сигурни да стечени подаци нису оштећени, можете навести исправно кодирање за обраду провера (нпр. 'vfs.file.contents') у параметру encoding. Листа подржаних кодирања (кодна страница идентификатора) може се наћи у документацији за libiconv (GNU пројекат) или у Microsoft Windows SDK документацији за "Code Page Identifiers".

Ако у параметру encoding није наведено кодирање, следеће стратегије решавања се примењују:

  • Ако кодирање није наведено (или је празан стринг) претпоставља се да је UTF-8, подаци се обрађују "онакви какви јесу";
  • BOM анализа - применљиво за ставке 'vfs.file.contents', 'vfs.file.regexp', 'vfs.file.regmatch'. Покушава да се одреди исправно енкодирање коришћењем ознаке реда бајтова (BOM) на почетку датотеке. Ако BOM није присутан - примењује се стандардно решење (погледајте горе).

Решавање проблема са ставкама агента

У случају пасивних провера, да спречите да та ставка не добије никакву вредност јер захтев сервера агенту прво истекне, треба напоменути следеће: