Zabbix агент
Обзор
В этом разделе приведены сведения о ключах элементов данных, которые используют взаимодействие с агентом Zabbix для сбора данных.
Существуют пассивные и активные проверки агента. При настройке элемента данных вы можете выбрать нужный тип:
- Агент Zabbix - для пассивных проверок
- Агент Zabbix (активный) - для активных проверок
Обратите внимание, что все ключи элементов данных, поддерживаемые агентом Zabbix, также поддерживаются агентом Zabbix 2 нового поколения. См. дополнительные ключи элементов данных, которые можно использовать только с агентом 2.
Поддерживаемые ключи элементов данных
Ниже перечислены ключи элементов данных, которые можно использовать с агентом Zabbix.
Ключи элементов данных перечислены без параметров и дополнительной информации.
Нажмите ключ элемента данных, чтобы просмотреть полную информацию.
| Ключ элемента данных | Описание | Группа элементов данных |
|---|---|---|
| kernel.maxfiles | Максимальное количество открытых файлов, поддерживаемое ОС. | Ядро |
| kernel.maxproc | Максимальное количество процессов, поддерживаемое ОС. | |
| kernel.openfiles | Количество открытых в данный момент файловых дескрипторов. | |
| log | Мониторинг файла журнала. | Мониторинг журналов |
| log.count | Количество совпавших строк в отслеживаемом файле журнала. | |
| logrt | Мониторинг ротируемого файла журнала. | |
| logrt.count | Количество совпавших строк в ротируемом отслеживаемом файле журнала. | |
| modbus.get | Чтение данных Modbus. | Modbus |
| net.dns | Проверка состояния службы DNS. | Сеть |
| net.dns.perf | Проверка производительности службы DNS. | |
| net.dns.record | Выполнение DNS-запроса. | |
| net.if.collisions | Количество коллизий вне окна. | |
| net.if.discovery | Список сетевых интерфейсов. | |
| net.if.get | Список сетевых интерфейсов с подробной информацией. | |
| 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 | Процент использования процессором процесса. | Процессы |
| proc.get | Список процессов ОС и их параметров. | |
| proc.mem | Объем памяти, используемой процессом, в байтах. | |
| proc.num | Количество процессов. | |
| sensor | Показания аппаратного датчика. | Датчики |
| system.boottime | Время загрузки системы. | Система |
| system.cpu.discovery | Список обнаруженных ЦП/ядер ЦП. | |
| system.cpu.intr | Прерывания устройств. | |
| system.cpu.load | Загрузка ЦП. | |
| system.cpu.num | Количество ЦП. | |
| system.cpu.switches | Количество переключений контекста. | |
| system.cpu.util | Процент использования ЦП. | |
| system.hostname | Имя узла сети системы. | |
| system.hw.chassis | Информация о корпусе. | |
| system.hw.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 | Статистика загрузки данных в пространство подкачки (с устройства в память). | |
| system.swap.out | Статистика выгрузки данных из пространства подкачки (из памяти на устройство). | |
| system.swap.size | Размер пространства подкачки в байтах или в процентах от общего объема. | |
| system.uname | Идентификация системы. | |
| system.uptime | Время работы системы в секундах. | |
| system.users.num | Количество вошедших в систему пользователей. | |
| vfs.dev.discovery | Список блочных устройств и их типов. | Виртуальные файловые системы |
| vfs.dev.get | Список блочных устройств с подробной информацией. | |
| 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. | |
| 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 | Список смонтированных файловых систем с их типами и параметрами монтирования, а в режиме full — доступное дисковое пространство и статистика inode. | |
| vfs.fs.inode | Количество или процент inode. | |
| vfs.fs.size | Дисковое пространство в байтах или в процентах от общего объема. | |
| vm.memory.size | Объем памяти в байтах или в процентах от общего объема. | Виртуальная память |
| web.page.get | Получение содержимого веб-страницы. | Веб-мониторинг |
| 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. Если указаны ip и port, метрики извлекаются из удаленного экземпляра; в противном случае — из локального экземпляра. |
|
| zabbix.stats (queue) | Возвращает количество отслеживаемых элементов данных в очереди, обработка которых задерживается на сервере или прокси Zabbix. Если указаны ip и port, метрики извлекаются из удаленного экземпляра; в противном случае — из локального экземпляра. |
Поддерживаемые платформы
Если в описании элемента данных не указано иное, элементы данных агента (и все параметры) поддерживаются на:
- Linux
- FreeBSD
- Solaris
- HP-UX
- AIX
- MacOS X
- OpenBSD
- NetBSD
Многие элементы данных агента также поддерживаются на Windows. Подробности смотрите на странице Элементы данных агента Windows.
Подробности ключей элементов данных
Параметры без угловых скобок обязательны. Параметры, обозначенные угловыми скобками < >, опциональны.
kernel.maxfiles
Максимальное количество открытых файлов, поддерживаемое ОС.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, MacOS X, OpenBSD, NetBSD.
kernel.maxproc
Максимальное количество процессов, поддерживаемое ОС.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux 2.6 и новее, FreeBSD, Solaris, MacOS X, OpenBSD, NetBSD.
kernel.openfiles
Количество открытых в данный момент файловых дескрипторов.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux (элемент данных может работать и на других UNIX-подобных платформах).
log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>,<options>,<persistent dir>]
Мониторинг файла журнала.
Возвращаемое значение: Log.
См. поддерживаемые платформы.
Параметры:
- file - полный путь и имя файла журнала;
- regexp - регулярное выражение, описывающее требуемый шаблон;
- encoding - идентификатор кодовой страницы;
- maxlines - максимальное число новых строк в секунду, которое агент будет отправлять на сервер Zabbix или прокси.
Этот параметр переопределяет значение
MaxLinesPerSecondвzabbix_agentd.conf; - mode - возможные значения:
- all (по умолчанию);
- skip - пропуск обработки более старых данных (влияет только на вновь созданные элементы данных);
- output - необязательный шаблон форматирования вывода.
Последовательность экранирования \0 заменяется совпавшей частью текста (от первого символа, где начинается совпадение, до символа, где совпадение заканчивается), а последовательность \N (где N=1...9) заменяется N-й совпавшей группой (или пустой строкой, если N превышает число захваченных групп);
- maxdelay - максимальная задержка в секундах.
Тип: float.
Значения:
- 0 - (по умолчанию) никогда не игнорировать строки файла журнала;
- > 0.0 - игнорировать более старые строки, чтобы наиболее свежие проанализированные строки были получены в пределах "maxdelay" секунд.
Перед использованием прочитайте примечания по maxdelay!
- options - дополнительные параметры:
mtime-noreread - неуникальные записи, перечитывать только если изменился размер файла (изменение времени модификации игнорируется). (Этот параметр устарел начиная с 5.0.2, так как теперь mtime игнорируется.) - persistent dir (только в zabbix_agentd в системах Unix; не поддерживается в Zabbix agent 2) - абсолютный путь к каталогу, где хранятся постоянные файлы. См. также дополнительные примечания о постоянных файлах.
Комментарии:
- Элемент данных должен быть настроен как активная проверка.
- Если файл отсутствует или права доступа не позволяют открыть его, элемент данных переходит в состояние неподдерживаемого.
- Если
outputоставить пустым, возвращается вся строка, содержащая совпавший текст. Обратите внимание, что все глобальные типы регулярных выражений, кроме Matches regular expression, всегда возвращают всю совпавшую строку, и параметр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] #this item will match a log record "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" and send only '6080' to server. Because a numeric value is being sent, the "Type of information" for this item can be set to "Numeric (unsigned)" and the value can be used in graphs, triggers etc.
Пример использования параметра 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"] #this item will match a log record "2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors" and send a modified record "2015-11-13 10:08:26 RECORDS: 6080, ERRORS: 0, DURATION: 6.08" to the server.
log.count[file,<regexp>,<encoding>,<maxproclines>,<mode>,<maxdelay>,<options>,<persistent dir>]
Количество совпавших строк в контролируемом файле журнала.
Возвращаемое значение: Integer.
См. поддерживаемые платформы.
Параметры:
- file - полный путь и имя файла журнала;
- regexp - регулярное выражение, описывающее требуемый шаблон;
- encoding - идентификатор кодовой страницы;
- maxproclines - максимальное количество новых строк в секунду, которые агент будет анализировать (не может превышать 10000).
Значение по умолчанию: 10*
MaxLinesPerSecondвzabbix_agentd.conf. - mode - возможные значения:
- all (по умолчанию);
- skip - пропускать обработку более старых данных (влияет только на вновь созданные элементы данных).
- maxdelay - максимальная задержка в секундах.
Тип: float.
Значения:
- 0 - (по умолчанию) никогда не игнорировать строки файла журнала;
- > 0.0 - игнорировать более старые строки, чтобы наиболее свежие строки были проанализированы в течение "maxdelay" секунд.
Перед использованием прочитайте примечания по maxdelay!
- options - дополнительные параметры:
mtime-noreread - неуникальные записи, перечитывать только если изменяется размер файла (игнорировать изменение времени модификации). (Этот параметр устарел начиная с версии 5.0.2, поскольку теперь mtime игнорируется.) - persistent dir (только в
zabbix_agentdв системах Unix; не поддерживается в Zabbix agent 2) - абсолютный путь к каталогу, где хранятся постоянные файлы. См. также дополнительные примечания о постоянных файлах.
Комментарии:
- Элемент данных должен быть настроен как активная проверка.
- Совпадающие строки подсчитываются среди новых строк с момента последней проверки журнала агентом, и поэтому зависят от интервала обновления элемента данных.
- Если файл отсутствует или доступ к нему запрещен из-за прав доступа, элемент данных переходит в состояние неподдерживаемого.
logrt[file regexp,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>,<options>,<persistent dir>]
Мониторинг ротируемого файла журнала.
Возвращаемое значение: Log.
См. поддерживаемые платформы.
Параметры:
- file regexp - абсолютный путь к файлу, при этом имя файла задается с использованием регулярного выражения.
Обратите внимание, что регулярное выражение применяется только к имени файла и не должно совпадать с полным именем (например,
/path/to/agentбудет соответствоватьzabbix_agentd.log). - regexp - регулярное выражение, описывающее требуемый шаблон содержимого.
- encoding - идентификатор кодовой страницы.
- maxlines - максимальное число новых строк в секунду, которое агент будет отправлять на сервер Zabbix или прокси.
Этот параметр переопределяет значение
MaxLinesPerSecondвzabbix_agentd.conf. - mode - возможные значения:
- all (по умолчанию);
- skip - пропуск обработки более старых данных (влияет только на вновь созданные элементы данных).
- output - необязательный шаблон форматирования вывода.
Последовательность экранирования \0 заменяется совпавшей частью текста (от первого символа, где начинается совпадение, до символа, где совпадение заканчивается), а последовательность \N (где N=1...9) заменяется N-й совпавшей группой (или пустой строкой, если N превышает число захваченных групп).
- maxdelay - максимальная задержка в секундах.
Тип: float.
Значения:
- 0 - (по умолчанию) никогда не игнорировать строки файла журнала;
- > 0.0 - игнорировать более старые строки, чтобы наиболее свежие строки были проанализированы в течение "maxdelay" секунд.
Перед использованием прочитайте примечания о maxdelay!
- options - тип ротации файла журнала и другие параметры.
Возможные значения:
- rotate (по умолчанию).
- copytruncate - обратите внимание, что copytruncate нельзя использовать вместе с maxdelay. В этом случае maxdelay должен быть 0 или не указан; см. примечания о copytruncate.
- mtime-reread - неуникальные записи, перечитывать при изменении времени модификации или размера (используется по умолчанию, если явно не задан ни один параметр
mtime-*). - mtime-noreread - неуникальные записи, перечитывать только при изменении размера (игнорировать изменение времени модификации).
- persistent dir (только в
zabbix_agentdв системах Unix; не поддерживается в Zabbix agent 2) - абсолютный путь к каталогу, где будут храниться постоянные файлы. См. также дополнительные примечания о постоянных файлах.
Комментарии:
- Элемент данных должен быть настроен как активная проверка.
- Ротация журнала основана на времени последнего изменения файлов.
- Обратите внимание, что
logrtпредназначен для работы с одним текущим активным файлом журнала и несколькими другими совпадающими неактивными ротированными файлами. Если, например, в каталоге много активных файлов журнала, для каждого из них следует создать отдельный элемент данныхlogrt. В противном случае, если один элемент данныхlogrtбудет обрабатывать слишком много файлов, это может привести к исчерпанию памяти и сбою мониторинга. - Если
outputоставить пустым, будет возвращена вся строка, содержащая совпавший текст. Обратите внимание, что все глобальные типы регулярных выражений, кроме Matches regular expression, всегда возвращают всю совпавшую строку, а параметрoutputигнорируется. - Извлечение содержимого с использованием параметра
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 - регулярное выражение, описывающее требуемый шаблон.
- encoding - идентификатор кодовой страницы identifier.
- maxproclines - максимальное количество новых строк в секунду, которое агент будет анализировать (не может превышать 10000).
Значение по умолчанию: 10*
MaxLinesPerSecondвzabbix_agentd.conf. - mode - возможные значения:
- all (по умолчанию);
- skip - пропуск обработки более старых данных (влияет только на вновь созданные элементы данных).
- maxdelay - максимальная задержка в секундах.
Тип: float.
Значения:
- 0 - (по умолчанию) никогда не игнорировать строки журнала;
- > 0.0 - игнорировать более старые строки, чтобы наиболее свежие строки были проанализированы в течение "maxdelay" секунд.
Перед использованием прочитайте примечания к
maxdelay!
- options - тип ротации файла журнала и другие параметры.
Возможные значения:
- rotate (по умолчанию).
- copytruncate - обратите внимание, что
copytruncateнельзя использовать вместе сmaxdelay. В этом случаеmaxdelayдолжен быть0или не указан; см. примечания кcopytruncate. - mtime-reread - неуникальные записи, перечитывать при изменении времени модификации или размера (по умолчанию).
- mtime-noreread - неуникальные записи, перечитывать только при изменении размера (игнорировать изменение времени модификации).
- persistent dir (только в
zabbix_agentdв системах Unix; не поддерживается в Zabbix agent 2) - абсолютный путь к каталогу, где будут храниться постоянные файлы. См. также дополнительные примечания о постоянных файлах.
Комментарии:
- Элемент данных должен быть настроен как активная проверка.
- Совпавшие строки подсчитываются среди новых строк с момента последней проверки журнала агентом и, таким образом, зависят от интервала обновления элемента данных.
- Ротация журнала основана на времени последнего изменения файлов.
- В параметре
file regexpпуть к каталогу журнала и регулярное выражение файла журнала должны быть разделены правильным разделителем каталогов:- В Windows разделителем должен быть обратный слеш (\); прямые слеши могут допускаться в других позициях, кроме той, которая разделяет путь к каталогу журнала и регулярное выражение файла журнала (см. примеры ниже).
- В других системах он должен быть прямым слешем (/).
Примеры для Windows:
logrt.count["c:/dir1/dir2/dir3\filename.*\.log","pattern_to_match"] #this item will count the number of matches for the pattern "pattern_to_match" in log files located in "c:/dir1/dir2/dir3".
logrt.count["//example.com/share/dir1/dir2/dir3\filename.*\.log","pattern_to_match"] #this item will count the number of matches for the pattern "pattern_to_match" in log files on the network share "//example.com/share/dir1/dir2/dir3".
Примеры для других систем:
logrt.count["/home/zabbix/logs/.*","^logfile[0-9]{1,3}$",,100] #this item will count the number of matches for the pattern "^logfile[0-9]{1,3}$" in log files in the "/home/zabbix/logs" directory.
logrt.count["/home/user/^logfile_.*_[0-9]{1,3}$","pattern_to_match","UTF-8",100] #this item will count the number of occurrences of the pattern "pattern_to_match" in log files located in "/home/user".
modbus.get[endpoint,<slave id>,<function>,<address>,<count>,<type>,<endianness>,<offset>]
Читает данные Modbus.
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux, Windows.
Параметры:
- endpoint - endpoint, определенный как
protocol://connection_string; - slave id - ID slave;
- function - функция Modbus;
- address - адрес первого регистра, coil или input;
- count - количество записей для чтения;
- type - тип данных;
- endianness - настройка порядка байтов;
- offset - количество регистров, начиная с
address, результаты которых будут отброшены.
В Windows этот элемент данных следует по UNC-путям в параметре endpoint, что может представлять риск безопасности.
См. подробное описание параметров.
net.dns[<ip>,name,<type>,<timeout>,<count>,<protocol>]
Проверяет состояние службы DNS.
Возвращаемые значения:
- 0 - разрешение DNS не удалось (DNS-сервер не ответил или вернул ошибку);
- 1 - разрешение DNS выполнено успешно.
См. поддерживаемые платформы.
Параметры:
- ip (игнорируется в Windows, если не используется Zabbix agent 2) - IP-адрес DNS-сервера (оставьте пустым для DNS-сервера по умолчанию);
- name - DNS-имя для запроса;
- type - тип записи, которую нужно запросить (по умолчанию
SOA); - timeout (игнорируется в Windows, если не используется Zabbix agent 2) - время ожидания запроса в секундах (по умолчанию
1секунда); - count (игнорируется в Windows, если не используется Zabbix agent 2) - количество попыток выполнения запроса (по умолчанию
2); - protocol - протокол, используемый для выполнения DNS-запросов: udp (по умолчанию) или tcp.
Комментарии:
- Возможные значения
type: ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (не поддерживается для Zabbix agent в Windows, Zabbix agent 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 agent 2) - IP-адрес DNS-сервера (оставьте пустым для DNS-сервера по умолчанию);
- name - DNS-имя для запроса;
- type - тип записи, которую нужно запросить (по умолчанию
SOA); - timeout (игнорируется в Windows, если не используется Zabbix agent 2) - время ожидания запроса в секундах (по умолчанию
1секунда); - count (игнорируется в Windows, если не используется Zabbix agent 2) - количество попыток для запроса (по умолчанию
2); - protocol - протокол, используемый для выполнения DNS-запросов: udp (по умолчанию) или tcp.
Комментарии:
- Возможные значения для
type:
ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (не поддерживается для Zabbix agent в Windows, Zabbix agent 2 во всех ОС), HINFO, MINFO, TXT, SRV. - Для обратных DNS-запросов (когда
typeустановлен в PTR) можно указать DNS-имя как в обратном, так и в прямом формате (см. примеры ниже). Обратите внимание, что при запросе записи PTR DNS-имя фактически является IP-адресом. - Имена доменов с интернационализацией не поддерживаются, используйте вместо них имена, закодированные в IDNA.
- Элемент данных возвращает время ответа вместо
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 на всех ОС), 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]
Количество коллизий за пределами окна (out-of-window).
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, AIX, MacOS X, OpenBSD, NetBSD.
На NetBSD требуются права суперпользователя (root).
Параметр:
- if — имя сетевого интерфейса
net.if.discovery
Список сетевых интерфейсов.
Используется для обнаружения на низком уровне.
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, HP-UX, AIX, OpenBSD, NetBSD, Windows.
net.if.get[<regexp>]
Список сетевых интерфейсов с подробной информацией.
Используется для низкоуровневого обнаружения.
Этот элемент данных является расширенной версией элемента данных net.if.discovery агента Zabbix.
Возвращаемое значение: JSON object.
Поддерживаемые платформы: Linux.
Параметры:
- regexp - регулярное выражение, соответствующее именам сетевых интерфейсов.
Комментарии:
- Возвращает JSON-объект с сетевыми интерфейсами, имена которых соответствуют заданному регулярному выражению (см. подробнее).
net.if.in[if,<mode>]
Статистика входящего трафика на сетевом интерфейсе.
Возвращаемое значение: Integer.
Поддерживаемые платформы: Linux, FreeBSD, Solaris5, HP-UX, AIX, MacOS X, OpenBSD, NetBSD, Windows.
Для NetBSD требуются права root.
Параметры:
- if - имя сетевого интерфейса (Unix); полное описание сетевого интерфейса или IPv4-адрес; или, если указано в фигурных скобках, GUID сетевого интерфейса (Windows);
- mode - возможные значения:
- bytes - количество байтов (по умолчанию);
- packets - количество пакетов;
- errors - количество ошибок;
- dropped - количество отброшенных пакетов;
- overruns (fifo) - количество ошибок буфера FIFO;
- frame - количество ошибок кадрирования пакетов;
- compressed - количество сжатых пакетов, полученных драйвером устройства;
- multicast - количество многоадресных кадров, полученных драйвером устройства.
Комментарии:
- Вы можете использовать этот ключ с шагом предварительной обработки Change per second, чтобы получить статистику в байтах в секунду.
- Режим dropped поддерживается только в Linux, FreeBSD, HP-UX, MacOS X, OpenBSD, NetBSD.
- Режимы overruns, frame, compressed, multicast поддерживаются только в Linux.
- В HP-UX этот элемент данных не предоставляет подробные сведения для интерфейсов loopback (например, 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, Windows.
На NetBSD требуются права root.
Параметры:
- if - имя сетевого интерфейса (Unix); полное описание сетевого интерфейса или IPv4-адрес; либо, если указано в фигурных скобках, GUID сетевого интерфейса (Windows);
- mode - возможные значения:
- bytes - количество байт (по умолчанию);
- packets - количество пакетов;
- errors - количество ошибок;
- dropped - количество отброшенных пакетов;
- overruns (fifo) - количество ошибок буфера FIFO;
- collisions (colls) - количество коллизий, обнаруженных на интерфейсе;
- carrier - количество потерь carrier, обнаруженных драйвером устройства;
- compressed - количество сжатых пакетов, переданных драйвером устройства.
Комментарии:
- Вы можете использовать этот ключ с шагом предварительной обработки Change per second, чтобы получить статистику в байтах в секунду.
- Режим dropped поддерживается только в Linux, HP-UX.
- Режимы overruns, collision, carrier, compressed поддерживаются только в Linux.
- В HP-UX этот элемент данных не предоставляет подробные сведения о loopback-интерфейсах (например, 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, Windows.
На NetBSD требуются права root.
Параметры:
- if - имя сетевого интерфейса (Unix); полное описание сетевого интерфейса или IPv4-адрес; или, если указано в фигурных скобках, GUID сетевого интерфейса (Windows);
- mode - возможные значения:
- bytes - количество байт (по умолчанию);
- packets - количество пакетов;
- errors - количество ошибок;
- dropped - количество отброшенных пакетов;
- overruns (fifo) - количество ошибок буфера FIFO;
- collisions (colls) - количество коллизий, обнаруженных на интерфейсе;
- compressed - количество сжатых пакетов, переданных или полученных драйвером устройства.
Комментарии:
- Вы можете использовать этот ключ с шагом предварительной обработки Change per second, чтобы получить статистику в байтах в секунду.
- Режим dropped поддерживается только в Linux, HP-UX.
Отброшенные пакеты поддерживаются только в том случае, если и
net.if.in, иnet.if.outработают для отброшенных пакетов на вашей платформе. - Режимы overruns, collision, compressed поддерживаются только в Linux.
- В HP-UX этот элемент данных не предоставляет подробности для loopback-интерфейсов (например, 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, Windows.
Параметр:
- port - номер TCP-порта
В ядрах Linux 2.6.14 и выше информация о прослушивающих TCP-сокетах, если возможно, получается через интерфейс 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>]. - Эти проверки могут приводить к появлению дополнительных сообщений в журналах системных демонов (обычно в журналах сеансов SMTP и SSH).
Пример:
net.tcp.port[,80] #этот элемент данных можно использовать для проверки доступности веб-сервера, работающего на порту 80
net.tcp.service[service,<ip>,<port>]
Проверяет, запущена ли служба и принимает ли она TCP-соединения.
Возвращаемые значения: 0 - служба недоступна; 1 - служба запущена.
См. поддерживаемые платформы.
Параметры:
- service - ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https или telnet (см. подробности);
- ip - IP-адрес или DNS-имя (по умолчанию
127.0.0.1); - port - номер порта (по умолчанию используется стандартный номер порта службы).
Комментарии:
- Эти проверки могут приводить к появлению дополнительных сообщений в системных журналах демонов (обычно регистрируются сеансы SMTP и SSH).
- Проверка зашифрованных протоколов (например, IMAP на порту 993 или POP на порту 995) в настоящее время не поддерживается.
В качестве обходного решения используйте
net.tcp.port[]для подобных проверок. - Проверка LDAP и HTTPS в Windows поддерживается только агентом Zabbix agent 2.
- Проверка telnet ищет приглашение к входу в систему (':' в конце).
Пример:
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 - сервис недоступен; seconds - количество секунд, затраченных на ожидание ответа от сервиса).
См. поддерживаемые платформы.
Параметры:
- service - ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https или telnet (см. подробности);
- ip - IP-адрес или DNS-имя (по умолчанию
127.0.0.1); - port - номер порта (по умолчанию используется стандартный номер порта сервиса).
Комментарии:
- Проверка зашифрованных протоколов (например, IMAP на порту 993 или POP на порту 995) в настоящее время не поддерживается.
В качестве обходного решения используйте
net.tcp.service.perf[tcp,<ip>,<port>]для таких проверок. - Проверка telnet ищет приглашение к входу в систему (':' в конце).
Пример:
net.tcp.service.perf[ssh] #этот элемент данных можно использовать для проверки скорости первоначального ответа от SSH-сервера
net.tcp.socket.count[<локальный_адрес>,<локальный_порт>,<удалённый_адрес>,<удалённый_порт>,<состояние>]
Получение количества TCP сокетов, соответствующих заданным параметрам.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, Windows.
Параметры:
- локальный_адрес — локальный IPv4/6 адрес или CIDR подсеть;
- локальный_порт — номер локального порта или имя сервиса;
- удалённый_адрес — удалённый IPv4/6 адрес или CIDR подсеть;
- удалённый_порт — номер удалённого порта или имя сервиса;
- состояние — состояние соединения (established, syn_sent, syn_recv, fin_wait1, fin_wait2, time_wait, close, close_wait, last_ack, listen, closing).
Пример:
net.tcp.socket.count[,80,,,established] #количество соединений на локальный TCP порт 80 в состоянии «established»
net.udp.listen[порт]
Проверка, находится ли UDP порт в состоянии LISTEN.
Возвращаемые значения: 0 — не находится в состоянии LISTEN; 1 — находится в состоянии LISTEN.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, MacOS X.
Параметр:
- порт — номер UDP порта
Пример:
net.udp.listen[68]
net.udp.service[service,<ip>,<port>]
Проверяет, запущена ли служба и отвечает ли она на UDP-запросы.
Возвращаемые значения: 0 - служба недоступна; 1 - служба запущена.
См. поддерживаемые платформы.
Параметры:
- service - ntp (см. подробности);
- ip - IP-адрес или DNS-имя (по умолчанию
127.0.0.1); - port - номер порта (по умолчанию используется стандартный номер порта службы).
Пример:
net.udp.service[ntp,,45] #этот элемент данных можно использовать для проверки доступности службы NTP на UDP-порту 45
net.udp.service.perf[service,<ip>,<port>]
Проверяет производительность UDP-сервиса.
Возвращаемые значения: Float (0 - сервис недоступен; seconds - количество секунд, затраченных на ожидание ответа от сервиса).
См. поддерживаемые платформы.
Параметры:
- service - ntp (см. подробности);
- ip - IP-адрес или DNS-имя (по умолчанию
127.0.0.1); - port - номер порта (по умолчанию используется стандартный номер порта сервиса).
Пример:
net.udp.service.perf[ntp] #this item can be used to test response time from NTP service
net.udp.socket.count[<локальный_адрес>,<локальный_порт>,<удалённый_адрес>,<удалённый_порт>,<состояние>]
Получение количества UDP сокетов, соответствующих заданным параметрам.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, Windows.
Параметры:
- локальный_адрес — локальный IPv4/6 адрес или CIDR подсеть;
- локальный_порт — номер локального порта или имя сервиса;
- удалённый_адрес — удалённый IPv4/6 адрес или CIDR подсеть;
- удалённый_порт — номер удалённого порта или имя сервиса;
- состояние — состояние соединения (established, unconn).
Пример:
net.udp.socket.count[,,,,established] #возвращает количество UDP сокетов в состоянии «established»
proc.cpu.util[<name>,<user>,<type>,<cmdline>,<mode>,<zone>]
Процент использования CPU процессом.
Возвращаемое значение: Float.
Поддерживаемые платформы: Linux, Solaris6.
Параметры:
- name - имя процесса (по умолчанию all processes);
- user - имя пользователя (по умолчанию all users);
- type - тип использования CPU: total (по умолчанию), user или system;
- cmdline - фильтрация по командной строке (это регулярное выражение);
- mode - режим сбора данных: avg1 (по умолчанию), avg5 или avg15;
- zone - целевая зона: current (по умолчанию) или all. Этот параметр поддерживается только в Solaris.
Комментарии:
- Возвращаемое значение основано на проценте использования одного ядра CPU. Например, использование CPU процессом, полностью загружающим два ядра, составляет 200%.
- Данные об использовании CPU процессом собираются сборщиком, который поддерживает максимум 1024 уникальных запросов (по имени, пользователю и командной строке). Запросы, к которым не обращались в течение последних 24 часов, удаляются из сборщика.
- При установке параметра
zoneв значение current (или по умолчанию), если агент был скомпилирован в Solaris без поддержки зон, но запущен в более новой версии Solaris, где зоны поддерживаются, агент вернет NOTSUPPORTED (агент не может ограничить результаты только текущей зоной). Однако в этом случае поддерживается значение all.
Примеры:
proc.cpu.util[,root] #использование CPU всеми процессами, запущенными от пользователя "root"
proc.cpu.util[zabbix_server,zabbix] #использование CPU всеми процессами zabbix_server, запущенными от пользователя zabbix
proc.get[<name>,<user>,<cmdline>,<mode>]
Список процессов ОС и их параметров.
Может использоваться для низкоуровневого обнаружения.
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux, FreeBSD, Windows, OpenBSD, NetBSD.
Параметры:
- name - имя процесса (по умолчанию all processes).
- user - имя пользователя (по умолчанию all users).
- cmdline - фильтрация по командной строке (это регулярное выражение). Этот параметр не поддерживается в Windows; на других платформах он не поддерживается, если для mode задано значение 'summary'.
- mode - возможные значения:
- process (по умолчанию);
- thread (не поддерживается в NetBSD);
- summary. См. список параметров процесса, возвращаемых для каждого режима и ОС.
Комментарии:
- Если значение невозможно получить, например из-за ошибки (процесс уже завершился, недостаточно прав, сбой системного вызова), будет возвращено
-1. - См. примечания по выбору процессов с параметрами
nameиcmdline(только для Linux).
Примеры:
proc.get[zabbix_server,zabbix,,process] #список всех процессов zabbix_server, запущенных от пользователя zabbix, возвращает одну запись на каждый PID
proc.get[java,,,thread] #список всех процессов Java, возвращает одну запись на каждый поток
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.
Параметры:
- name - имя процесса (по умолчанию - all processes);
- user - имя пользователя (по умолчанию - all users);
- mode - возможные значения: 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, Windows.
Параметры:
- name - имя процесса (по умолчанию - all processes).
- user - имя пользователя (по умолчанию - all users).
- state - возможные значения:
- all (по умолчанию);
- disk - непрерываемый сон;
- run - выполняется;
- sleep - прерываемый сон;
- trace - остановлен;
- zomb - зомби.
- cmdline - фильтрация по командной строке (это регулярное выражение).
- zone - целевая зона: current (по умолчанию) или all. Этот параметр поддерживается только в Solaris.
Комментарии:
- Параметры состояния disk и trace поддерживаются только в Linux, FreeBSD, OpenBSD, NetBSD.
- В Windows поддерживаются только параметры
nameиuser. - Когда этот элемент данных вызывается из командной строки и содержит параметр командной строки (например, при использовании тестового режима агента:
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] #количество процессов в состоянии sleep, запущенных от Oracle и содержащих oracleZABBIX в своей командной строке
sensor[device,sensor,<mode>]
Показания аппаратного датчика.
Возвращаемое значение: Float.
Поддерживаемые платформы: Linux, OpenBSD.
Параметры:
- device - имя устройства;
- sensor - имя датчика;
- mode - возможные значения: avg, max или min.
Комментарии:
- Читает
/proc/sys/dev/sensorsв Linux 2.4. - Читает
/sys/class/hwmonв Linux 2.6+. См. более подробное описание элемента данных sensor в Linux. - Читает MIB
hw.sensorsв OpenBSD. - В Linux 2.4, если указан mode, то device и sensor рассматриваются как регулярные выражения.
- В Linux 2.6+ и OpenBSD, либо если mode опущен, device и sensor рассматриваются как буквальные значения.
Примеры:
sensor[w83781d-i2c-0-2d,temp1]
sensor[cpu0,temp0] #температура одного CPU
sensor["cpu[0-2]$",temp,avg] #средняя температура первых трех CPU
system.boottime
Штамп времени (timestamp) загрузки системы.
Возвращаемое значение: Целое число (Unix timestamp).
Поддерживаемые платформы: Linux, FreeBSD, Solaris, MacOS X, OpenBSD, NetBSD.
system.cpu.discovery
Список обнаруженных CPU/ядер CPU.
Используется для обнаружения на низком уровне.
Возвращаемое значение: JSON string.
См. supported platforms.
system.cpu.intr
Прерывания устройств.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, AIX, OpenBSD, NetBSD.
system.cpu.load[<cpu>,<режим>]
Загрузка CPU.
Возвращаемое значение: Число с плавающей точкой.
Смотрите Поддерживаемые платформы.
Параметры:
- cpu — возможные значения: all (по умолчанию) или percpu (общая загрузка делится на количество CPU онлайн);
- режим — возможные значения: avg1 (усреднение за одну минуту, по умолчанию), avg5 или avg15.
Пример:
system.cpu.load[,avg5]
system.cpu.num[<тип>]
Количество CPU.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, HP-UX, AIX, MacOS X, OpenBSD, NetBSD, Windows.
Параметр:
- тип — возможные значения: online (по умолчанию) или max
Значение max параметра «тип» поддерживается только в Linux, FreeBSD, Solaris, MacOS X.
Пример:
system.cpu.num
system.cpu.switches
Количество переключений контекста.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: 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, Windows.
Параметры:
- cpu - <номер CPU> или all (по умолчанию);
- type - возможные значения: user (по умолчанию), idle, nice, system, iowait, interrupt, softirq, steal, spin (в OpenBSD), guest (в ядрах Linux 2.6.24 и выше) или guest_nice (в ядрах Linux 2.6.33 и выше);
- mode - возможные значения: avg1 (среднее за одну минуту, по умолчанию), avg5 или avg15;
- logical or physical - возможные значения: 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.
См. поддерживаемые платформы.
Параметры:
- type - возможные значения:
- netbios (по умолчанию в Windows);
- host (по умолчанию в Linux);
- shorthost (возвращает часть имени узла до первой точки, полную строку для имен без точек);
- fqdn (возвращает Fully Qualified Domain Name).
- 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[<информация>]
Информация о шасси.
Возвращаемое значение: Строка.
Поддерживаемые платформы: 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>,<информация>]
Информация о CPU.
Возвращаемое значение: Строка или Целое число.
Поддерживаемые платформы: Linux.
Параметры:
- cpu — <номер CPU> или all (по умолчанию);
- информация — возможные значения: full (по умолчанию), curfreq, maxfreq, model или vendor.
Комментарии:
- Информация собирается из
/proc/cpuinfoи из/sys/devices/system/cpu/[cpunum]/cpufreq/cpuinfo_max_freq; - Если указаны номер CPU и curfreq или maxfreq, то возвращается числовое значение (Гц).
Пример:
system.hw.cpu[0,vendor] → AuthenticAMD
system.hw.devices[<тип>]
Список PCI или USB устройств.
Возвращаемое значение: Текст.
Поддерживаемые платформы: 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.
Параметры:
- interface - all (по умолчанию) или регулярное выражение;
- format - 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; String - при type = local.
См. поддерживаемые платформы.
Параметры:
- type - возможные значения:
- utc - (по умолчанию) время, прошедшее с начала эпохи (00:00:00 UTC, 1 января 1970 года), измеряемое в секундах;
- local - время в формате 'yyyy-mm-dd,hh:mm:ss.nnn,+hh:mm'.
Должен использоваться как пассивная проверка для агента Zabbix; в Zabbix agent 2 может быть настроен как активная проверка.
Пример:
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 (независимо от результата команды).
См. поддерживаемые платформы.
Параметры:
- command - команда для выполнения;
- mode - возможные значения:
- wait - ждать завершения выполнения (по умолчанию);
- nowait - не ждать.
Комментарии:
- Этот элемент данных по умолчанию отключен. Узнайте, как включить их.
- Возвращаемое значение элемента данных - это стандартный вывод вместе со стандартным потоком ошибок, созданным командой. Проверка кода завершения не выполняется.
- Для корректной обработки возвращаемое значение команды должно иметь тип данных
text. Пустой результат также допускается. - Возвращаемое значение ограничено 16 МБ (включая завершающие пробелы, которые обрезаются); также действуют ограничения базы данных.
- См. также: Выполнение команд.
Пример:
system.run[ls -l /] #return a detailed file list of the root directory
system.stat[resource,<type>]
Системная статистика.
Возвращаемое значение: Integer или float.
Поддерживаемые платформы: AIX.
Параметры:
- ent - количество процессорных единиц, которое данному разделу разрешено получать (float).
- kthr,<type> - информация о состояниях потоков ядра:
- r - среднее количество исполняемых потоков ядра (float);
- b - среднее количество потоков ядра, помещенных в очередь ожидания Virtual Memory Manager (float).
- memory,<type> - информация об использовании виртуальной и физической памяти:
- avm - активные виртуальные страницы (integer);
- fre - размер списка свободных страниц (integer).
- page,<type> - информация о page fault и активности подкачки:
- 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 - время простоя, в течение которого в системе были невыполненные запросы ввода-вывода на диск/NFS (float);
- pc - количество задействованных физических процессоров (float);
- ec - процент использованной выделенной емкости (float);
- lbusy - указывает процент использования логических процессоров, который приходился на выполнение на пользовательском и системном уровнях (float);
- app - указывает доступные физические процессоры в общем пуле (float).
- disk,<type> - статистика диска:
- bps - указывает объем данных, переданных на накопитель или с него, в байтах в секунду (integer);
- tps - указывает количество передач в секунду, выполненных для физического диска/ленты (float).
Комментарии:
- Обратите внимание на следующие ограничения для этих элементов данных:
system.stat[cpu,app]- поддерживается только на AIX LPAR типа "Shared";system.stat[cpu,ec]- поддерживается на AIX LPAR типов "Shared" и "Dedicated" ("Dedicated" всегда возвращает 100 (percent));system.stat[cpu,lbusy]- поддерживается только на AIX LPAR типа "Shared";system.stat[cpu,pc]- поддерживается на AIX LPAR типов "Shared" и "Dedicated";system.stat[ent]- поддерживается на AIX LPAR типов "Shared" и "Dedicated".
system.sw.arch
Информация об архитектуре программного обеспечения.
Возвращаемое значение: Строка.
Смотрите Поддерживаемые платформы.
Для получения информации используется функция uname().
Пример:
system.sw.arch → i686
system.sw.os[<info>]
Информация об операционной системе.
Возвращаемое значение: String.
Поддерживаемые платформы: Linux, Windows.
Параметр:
- info - возможные значения: full (по умолчанию), short или name
Информация info получается из следующих источников (обратите внимание, что не все файлы и параметры присутствуют во всех дистрибутивах):
/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 string.
Поддерживаемые платформы: Linux, Windows.
system.sw.packages[<regexp>,<manager>,<format>]
Список установленных пакетов.
Возвращаемое значение: Text.
Поддерживаемые платформы: Linux.
Параметры:
- regexp - all (по умолчанию) или регулярное выражение;
- manager - all (по умолчанию) или менеджер пакетов;
- format - full (по умолчанию) или short.
Комментарии:
- Выводит (в алфавитном порядке) установленные пакеты, имя которых соответствует заданному регулярному выражению (all выводит все).
- Поддерживаемые менеджеры пакетов (выполняемая команда):
- pkg (
dpkg --get-selections); - pkgtool (
ls /var/log/packages); - rpm (
rpm -qa); - pacman (
pacman -Q); - portage.
- pkg (
- Если
formatзадан как full, пакеты группируются по менеджерам пакетов (каждый менеджер на отдельной строке, начинающейся с его имени в квадратных скобках). - Если
formatзадан как short, пакеты не группируются и выводятся в одной строке.
Пример:
system.sw.packages[mini,dpkg,short] → python-minimal, python2.6-minimal, ubuntu-minimal
system.sw.packages.get[<regexp>,<manager>]
Подробный список установленных пакетов.
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux.
Параметры:
- regexp - all (по умолчанию) или регулярное выражение;
- manager - all (по умолчанию) или менеджер пакетов (возможные значения: rpm, dpkg, pkgtool, pacman или portage).
Комментарии:
- Возвращает неформатированный JSON с установленными пакетами, имя которых соответствует заданному регулярному выражению.
- Вывод представляет собой массив объектов, каждый из которых содержит следующие ключи: name, manager, version, size, architecture, buildtime и installtime (см. подробности).
system.swap.in[<device>,<type>]
Статистика swap-in (из устройства в память).
Возвращаемое значение: Integer.
Поддерживаемые платформы: Linux, FreeBSD, OpenBSD.
Параметры:
- device - укажите устройство, используемое для подкачки (только Linux) или all (по умолчанию);
- type - возможные значения:
- count (количество операций swap-in, по умолчанию на платформах, отличных от Linux);
- sectors (секторы, считанные в swap);
- pages (страницы, считанные в swap, по умолчанию на Linux).
Комментарии:
- Источником этой информации являются:
/proc/swaps,/proc/partitions,/proc/stat(Linux 2.4);/proc/swaps,/proc/diskstats,/proc/vmstat(Linux 2.6).
- Обратите внимание, что pages будет работать только если device не указан.
- Параметр типа sectors поддерживается только на Linux.
Пример:
system.swap.in[,pages]
system.swap.out[<device>,<type>]
Статистика swap-out (из памяти на устройство).
Возвращаемое значение: Integer.
Поддерживаемые платформы: Linux, FreeBSD, OpenBSD.
Параметры:
- device - укажите устройство, используемое для swap, (только Linux) или all (по умолчанию);
- type - возможные значения:
- count (количество операций swapout, по умолчанию на платформах, отличных от Linux);
- sectors (секторы, выгруженные в swap);
- pages (страницы, выгруженные в swap, по умолчанию на 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, Windows.
Параметры:
- device - укажите устройство, используемое для подкачки (только FreeBSD) или all (по умолчанию);
- type - возможные значения:
- free (свободное пространство подкачки, по умолчанию);
- pfree (свободное пространство подкачки, в процентах);
- pused (используемое пространство подкачки, в процентах);
- total (общее пространство подкачки);
- used (используемое пространство подкачки).
Комментарии:
- Обратите внимание, что pfree, pused не поддерживаются в Windows, если размер swap равен 0.
- Если device не указан, агент Zabbix будет учитывать только устройства подкачки (файлы), физическая память будет проигнорирована.
Например, в системах Solaris команда
swap -sвключает часть физической памяти и устройства подкачки (в отличие отswap -l).
Пример:
system.swap.size[,pfree] → процент свободного пространства подкачки
system.uname
Идентификация системы.
Возвращаемое значение: Строка.
Смотрите Поддерживаемые платформы.
Комментарии:
- В 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
Время работы в секундах.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, AIX, MacOS X, OpenBSD, NetBSD, Windows.
Для получения читабельных значений используйте при настройке элемента данных единицы измерения s или uptime.
system.users.num
Количество пользователей, находящихся в системе.
Возвращаемое значение: Целое число.
Смотрите Поддерживаемые платформы.
Для получения значений используется команда who на стороне агента.
vfs.dev.discovery
Список блочных устройств и их тип.
Используется для обнаружения на низком уровне.
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux.
vfs.dev.get[<mode>,<regexp>]
Список блочных устройств с подробной информацией.
Используется для низкоуровневого обнаружения.
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux, AIX.
Параметры:
- mode - возможные значения:
- disks (по умолчанию) - возвращает список дисков;
- disk_stats - возвращает статистику для каждого диска;
- devices (только Linux) - возвращает список блочных устройств (диски и разделы);
- device_stats (только Linux) - возвращает статистику для каждого устройства (диски и разделы).
- regexp - регулярное выражение, используемое для фильтрации блочных устройств по их имени.
vfs.dev.read[<device>,<type>,<mode>]
Статистика чтения диска.
Возвращаемое значение:
- Integer - при
typeв значениях sectors, operations, bytes; - Float - при
typeв значениях sps, ops, bps.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, AIX, OpenBSD.
Параметры:
- device - дисковое устройство (по умолчанию all 3);
- type - возможные значения: sectors, operations, bytes, sps, ops или bps (sps, ops, bps означают соответственно: sectors, operations, bytes per second);
- mode - возможные значения: 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 и 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.
Параметры:
- device - устройство диска (по умолчанию all 3);
- type - возможные значения: sectors, operations, bytes, sps, ops или bps (sps, ops, bps означают соответственно: sectors, operations, bytes per second);
- mode - возможные значения: 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 и bps на поддерживаемых платформах ограничены 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, записи каталога этого типа НЕ подсчитываются. - max depth - максимальная глубина вложенности подкаталогов для обхода:
- -1 (по умолчанию) - без ограничений;
- 0 - не переходить в подкаталоги.
- min size - минимальный размер (в байтах) файла, который необходимо подсчитывать. Файлы меньшего размера не подсчитываются. Можно использовать суффиксы размера памяти.
- max size - максимальный размер (в байтах) файла, который необходимо подсчитывать. Файлы большего размера не подсчитываются. Можно использовать суффиксы размера памяти.
- min age - минимальный возраст (в секундах) записи каталога, которую необходимо подсчитывать. Более новые записи не подсчитываются. Можно использовать суффиксы времени.
- max age - максимальный возраст (в секундах) записи каталога, которую необходимо подсчитывать. Записи такого возраста и старше не подсчитываются (по времени изменения). Можно использовать суффиксы времени.
- regex excl dir - регулярное выражение, описывающее шаблон имени каталога, который необходимо исключить.
Все содержимое каталога будет исключено (в отличие от
regex_excl).
Комментарии:
- В Windows этот элемент данных поддерживает пути UNC, которые могут представлять собой угрозу безопасности.
- Переменные окружения, например
%APP_HOME%,$HOMEи%TEMP%, не поддерживаются. - Псевдокаталоги "." и ".." никогда не подсчитываются.
- Символические ссылки никогда не используются для обхода каталогов.
- При подсчете количества записей к файлам и каталогам применяются оба параметра
regex inclиregex excl, но они игнорируются при выборе подкаталогов для обхода (еслиregex inclимеет значение(?i)^.+\.zip$, аmax depthне задан, будут обойдены все подкаталоги, но подсчитаны только файлы типа zip). - Время выполнения ограничено значением тайм-аута в конфигурации агента (3 секунды). Поскольку обход большого каталога может занять больше времени, данные возвращены не будут, а элемент данных станет неподдерживаемым. Частичный результат подсчета возвращен не будет.
- При фильтрации по размеру значимый размер имеют только обычные файлы.
В Linux и BSD каталоги также имеют ненулевой размер (обычно несколько КБ).
Размеры устройств равны нулю, например размер
/dev/sda1не отражает размер соответствующего раздела. Поэтому при использовании<min_size>и<max_size>рекомендуется указывать<types_incl>как "file", чтобы избежать неожиданных результатов.
Примеры:
vfs.dir.count[/dev] #отслеживает количество устройств в /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, записи каталога этого типа НЕ включаются в список. - max depth - максимальная глубина обхода подкаталогов:
- -1 (по умолчанию) - без ограничений;
- 0 - не переходить в подкаталоги.
- min size - минимальный размер (в байтах) файла, который необходимо включить в список. Файлы меньшего размера не включаются в список. Можно использовать суффиксы размера памяти.
- max size - максимальный размер (в байтах) файла, который необходимо включить в список. Файлы большего размера не включаются в список. Можно использовать суффиксы размера памяти.
- min age - минимальный возраст (в секундах) записи каталога, которую необходимо включить в список. Более новые записи не включаются в список. Можно использовать суффиксы времени.
- max age - максимальный возраст (в секундах) записи каталога, которую необходимо включить в список. Записи с таким или большим возрастом не включаются в список (по времени изменения). Можно использовать суффиксы времени.
- regex excl dir - регулярное выражение, описывающее шаблон имени каталога, который необходимо исключить.
Все содержимое каталога будет исключено (в отличие от
regex excl).
Комментарии:
- В Windows этот элемент данных поддерживает пути UNC, которые могут представлять угрозу безопасности.
- Переменные окружения, например
%APP_HOME%,$HOMEи%TEMP%, не поддерживаются. - Псевдокаталоги "." и ".." никогда не включаются в список.
- Символические ссылки никогда не используются для обхода каталогов.
regex inclиregex exclприменяются к файлам и каталогам при формировании списка записей, но игнорируются при выборе подкаталогов для обхода (еслиregex inclимеет значение(?i)^.+\.zip$, аmax depthне задан, будут обработаны все подкаталоги, но учитываться будут только файлы типа zip).- Время выполнения ограничено значением параметра timeout в конфигурации агента. Поскольку обход большого каталога может занять больше времени, данные возвращены не будут, а элемент данных станет неподдерживаемым. Частичный список возвращен не будет.
- При фильтрации по размеру значимый размер имеют только обычные файлы.
В Linux и BSD каталоги также имеют ненулевой размер (обычно несколько КБ).
Размер устройств равен нулю, например размер
/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, Windows.
Элемент данных может работать и на других UNIX-подобных платформах.
Параметры:
- dir - абсолютный путь к каталогу;
- regex incl - регулярное выражение, описывающее шаблон имени объекта (файл, каталог, символическая ссылка), который нужно включить; если пусто, включаются все (значение по умолчанию);
- regex excl - регулярное выражение, описывающее шаблон имени объекта (файл, каталог, символическая ссылка), который нужно исключить; если пусто, ничего не исключается (значение по умолчанию);
- mode - возможные значения:
- apparent (по умолчанию) - получает видимые размеры файлов, а не использование диска (действует как
du -sb dir); - disk - получает использование диска (действует как
du -s -B1 dir). В отличие от командыdu, элемент данных vfs.dir.size учитывает скрытые файлы при вычислении размера каталога (действует какdu -sb .[^.]* *внутри dir).
- apparent (по умолчанию) - получает видимые размеры файлов, а не использование диска (действует как
- max depth - максимальная глубина обхода подкаталогов:
- -1 (по умолчанию) - без ограничений;
- 0 - без перехода в подкаталоги.
- regex excl dir - регулярное выражение, описывающее шаблон имени каталога, который нужно исключить.
Все содержимое каталога будет исключено (в отличие от
regex excl)
Комментарии:
- В Windows этот элемент данных следует по UNC-путям, что может быть риском безопасности.
- Учитываются только каталоги, для которых у пользователя 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.
См. поддерживаемые платформы.
Параметры:
- file — полный путь к файлу;
- mode — crc32 (по умолчанию), md5 или sha256.
Комментарии:
- В Windows этот элемент данных следует по UNC-путям, что может представлять риск безопасности.
- Ограничение размера файла зависит от поддержки больших файлов.
Пример:
vfs.file.cksum[/etc/passwd]
Примеры возвращаемых значений (соответственно crc32/md5/sha256):
675436101
9845acf68b73991eb7fd7ee0ded23c44
ae67546e4aac995e5c921042d0cf0f1f7147703aa42bfbfb65404b30f238f2dc
vfs.file.contents[file,<encoding>]
Получение содержимого файла7.
Возвращаемое значение: Text.
См. поддерживаемые платформы.
Параметры:
- file - полный путь к файлу;
- encoding - идентификатор кодовой страницы identifier.
Комментарии:
- В Windows этот элемент данных следует по UNC-путям, что может представлять риск безопасности.
- Возвращаемое значение ограничено 16 МБ (включая завершающие пробельные символы, которые обрезаются); также действуют ограничения базы данных.
- Пустая строка возвращается, если файл пуст или содержит только символы LF/CR.
- Маркер порядка байтов (BOM) исключается из вывода.
Пример:
vfs.file.contents[/etc/passwd]
vfs.file.exists[file,<types incl>,<types excl>]
Проверяет, существует ли файл.
Возвращаемое значение: 0 - не найден; 1 - файл указанного типа существует.
См. поддерживаемые платформы.
Параметры:
- file - полный путь к файлу;
- types incl - список типов файлов для включения, возможные значения:
- file (обычный файл, по умолчанию (если
types_exclне задан)); - dir (каталог);
- sym (символическая ссылка);
- sock (сокет);
- bdev (блочное устройство);
- cdev (символьное устройство);
- fifo (FIFO);
- dev (синоним для "bdev,cdev");
- all (все перечисленные типы, по умолчанию, если задан
types_excl).
- file (обычный файл, по умолчанию (если
- types excl - список типов файлов для исключения, см.
types_inclдля возможных значений (по умолчанию типы не исключаются)
Комментарии:
- В Windows этот элемент следует по UNC-путям, что может представлять риск безопасности.
- Несколько типов должны быть разделены запятыми, а весь набор заключен в кавычки "".
- Если один и тот же тип указан и в <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 string.
См. поддерживаемые платформы.
Параметр:
- file - полный путь к файлу
Комментарии:
- В Windows этот элемент данных следует по путям UNC, что может представлять риск безопасности.
- Поддерживаемые типы файлов в UNIX-подобных системах: обычный файл, каталог, символическая ссылка, сокет, блочное устройство, символьное устройство, 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-хэш файла).
См. поддерживаемые платформы.
Параметр:
- file - полный путь к файлу
Комментарии:
- В Windows этот элемент данных следует по путям UNC, что может представлять риск безопасности.
- Ограничение размера файла зависит от поддержки больших файлов.
Пример:
vfs.file.md5sum[/usr/local/etc/zabbix_agentd.conf]
Пример возвращаемого значения:
b5052decb577e0fffd622d6ddc017e82
vfs.file.owner[file,<ownertype>,<resulttype>]
Получает владельца файла.
Возвращаемое значение: String.
См. поддерживаемые платформы.
Параметры:
- file - полный путь к файлу;
- ownertype - user (по умолчанию) или group (только Unix);
- resulttype - name (по умолчанию) или id; для id - возвращает uid/gid в Unix, SID в Windows.
Комментарии:
- В Windows этот элемент данных следует по UNC-путям, что может быть риском безопасности.
- Ограничение на размер файла зависит от поддержки больших файлов.
Примеры:
vfs.file.owner[/tmp/zabbix_server.log] #возвращает владельца файла /tmp/zabbix_server.log
vfs.file.owner[/tmp/zabbix_server.log,,id] #возвращает ID владельца файла /tmp/zabbix_server.log
vfs.file.permissions[файл]
Получение строки из 4 цифр, содержащей восьмеричное число с правами доступа Unix.
Возвращаемое значение: Строка.
Поддерживаемые платформы: Linux.
Элемент данных может работать на других UNIX-подобных платформах.
Параметры:
- файл — абсолютный путь к файлу
Ограничение размера файла зависит от поддержки больших файлов.
Пример:
vfs.file.permissions[/etc/passwd] #получение прав доступа к /etc/passwd, например, «0644»
vfs.file.regexp[file,regexp,<encoding>,<start line>,<end line>,<output>]
Получить строку в файле7.
Возвращаемое значение: строка, содержащая совпавшую строку, или значение, указанное с помощью необязательного параметра output.
См. поддерживаемые платформы.
Параметры:
- file - полный путь к файлу;
- regexp - регулярное выражение, описывающее требуемый шаблон;
- encoding - идентификатор кодовой страницы;
- start line - номер первой строки для поиска (по умолчанию первая строка файла);
- end line - номер последней строки для поиска (по умолчанию последняя строка файла);
- output - необязательный шаблон форматирования вывода. Последовательность экранирования \0 заменяется совпавшей частью текста (от первого символа, где начинается совпадение, до символа, где оно заканчивается), а последовательность экранирования \N (где N=1...9) заменяется N-й совпавшей группой (или пустой строкой, если N превышает число захваченных групп).
Комментарии:
- В Windows этот элемент данных следует UNC-путям, что может представлять риск безопасности.
- Ограничение размера файла зависит от поддержки больших файлов.
- Возвращается только первая совпавшая строка.
- Если ни одна строка не соответствует выражению, возвращается пустая строка.
- Метка порядка байтов (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 - номер последней строки для поиска (по умолчанию последняя строка файла).
Комментарии:
- В Windows этот элемент данных следует UNC-путям, что может представлять риск безопасности.
- Ограничение размера файла зависит от поддержки больших файлов.
- Метка порядка байтов (BOM) игнорируется.
Пример:
vfs.file.regmatch[/var/log/app.log,error]
vfs.file.size[file,<mode>]
Размер файла (в байтах).
Возвращаемое значение: Integer.
См. поддерживаемые платформы.
Параметры:
- file - полный путь к файлу;
- mode - возможные значения:
- bytes (по умолчанию);
- lines (пустые строки тоже учитываются).
Комментарии:
- В Windows этот элемент данных следует по UNC-путям, что может быть риском безопасности.
- Файл должен иметь права на чтение для пользователя zabbix.
- Ограничение размера файла зависит от поддержки больших файлов.
Пример:
vfs.file.size[/var/log/syslog]
vfs.file.time[file,<mode>]
Информация о времени файла.
Возвращаемое значение: Integer (Unix timestamp).
См. поддерживаемые платформы.
Параметры:
- file - полный путь к файлу;
- mode - возможные значения:
- modify (по умолчанию) - время последнего изменения содержимого файла (по умолчанию);
- access - время последнего чтения файла;
- change - время последнего изменения свойств файла.
Комментарии:
- В Windows этот элемент данных следует по UNC-путям, что может быть риском безопасности.
- Ограничение размера файла зависит от поддержки больших файлов.
Пример:
vfs.file.time[/etc/passwd,modify]
vfs.fs.discovery
Список смонтированных файловых систем с их типом и параметрами монтирования.
Используется для обнаружения на низком уровне.
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, HP-UX, AIX, MacOS X, OpenBSD, NetBSD, Windows.
vfs.fs.get[<mode>,<mountpoint>]
Список смонтированных файловых систем с указанием их типа и параметров монтирования, а в режиме full — доступного дискового пространства и статистики inode.
Можно использовать для обнаружения низкого уровня.
Возвращаемое значение: строка JSON.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, HP-UX, AIX, MacOS X, OpenBSD, NetBSD, Windows.
Параметры:
- mode — возможные значения:
- full (по умолчанию) — свойства файловой системы, а также статистика дискового пространства и inode;
- short — только свойства файловой системы, без статистики дискового пространства и inode;
- mountpoint — точка монтирования, для которой необходимо вернуть данные (например,
/varилиC:). Если параметр не указан, возвращаются все смонтированные файловые системы.
Комментарии:
- В режиме short возвращаются только имя файловой системы, тип и параметры монтирования (в Windows: имя, тип, метка и тип диска).
Статистика файловых систем не запрашивается; в Unix-подобных системах считывается только список смонтированных файловых систем (например,
/proc/mountsв Linux), поэтому проверка не вызывает автомонтирование и не зависит от не отвечающих сетевых файловых систем. Это делает режим short подходящим для обнаружения низкого уровня. - Значение mountpoint должно в точности соответствовать свойству
fsname. В Windows сравнение выполняется без учета регистра; указывайте точку монтирования без завершающей обратной косой черты (например,C:). - Если параметр mountpoint указан, данные возвращаются только для этой точки монтирования.
Если смонтированная файловая система не найдена, возвращается пустой массив (
[]). - Выходные данные могут содержать несколько записей с одинаковым значением
fsname, если в одном каталоге смонтировано несколько файловых систем. - В режиме full доступное дисковое пространство и статистика inode возвращаются только в том случае, если пользователь агента Zabbix имеет разрешение на обход каждого каталога в пути к точке монтирования; в противном случае файловая система исключается из выходных данных. Это не относится к режиму short, поэтому в нем могут отображаться файловые системы, отсутствующие в выходных данных режима full.
- Свойства
fslabelиfsdrivetypeвозвращаются только в Windows; свойстваinodesиoptionsв Windows не возвращаются. - Также отображаются файловые системы с количеством inode, равным нулю, что может быть характерно для файловых систем с динамическими inode (например, btrfs).
- См. также: Обнаружение смонтированных файловых систем.
Примеры:
vfs.fs.get #все смонтированные файловые системы со статистикой; то же, что и vfs.fs.get[full]
vfs.fs.get[short] #все смонтированные файловые системы без статистики
vfs.fs.get[full,/var] #статистика только для точки монтирования /var
vfs.fs.get[short,C:] #только свойства тома C: (Windows)
vfs.fs.inode[fs,<режим>]
Количество или процент inodes.
Возвращаемое значение: Целое число — для количества; Число с плавающей точной — для процентов.
Смотрите Поддерживаемые платформы.
Параметры:
- fs — файловая система;
- режим — возможные значения: total (по умолчанию), free, used, pfree (свободно, в процентах) или pused (использовано, в процентах).
Если количество inode'ов станет нулевым, что может случаться на файловых системах с динамическим количеством файловых дескрипторов (например, btrfs), значения pfree/pused будут сообщаться как «100» и «0» соответственно.
Пример:
vfs.fs.inode[/,pfree]
vfs.fs.size[fs,<режим>]
Дисковое пространство в байтах или процентах от общего размера.
Возвращаемое значение: Целое число — для байт; Число с плавающей точкой — для процентов.
Смотрите Поддерживаемые платформы.
Параметры:
- fs — файловая система;
- режим — возможные значения: total (по умолчанию), free, used, pfree (доступно, в процентах) или pused (использовано, в процентах).
Комментарии:
- Если файловая система не примонтирована, будет возвращён размер локальной файловой системы, где расположена точка монтирования;
- Зарезервированное место на файловой системе принимается во внимание и не включено при использовании режима free.
Пример:
vfs.fs.size[/tmp,free]
vm.memory.size[<mode>]
Размер памяти в байтах или в процентах от общего объема.
Возвращаемое значение: Integer - для байтов; Float - для процентов.
См. поддерживаемые платформы.
Параметр:
- mode - возможные значения: total (по умолчанию), active, anon, buffers, cached, exec, file, free, inactive, pinned, shared, slab, wired, used, pused (использовано, в процентах), available или pavailable (доступно, в процентах).
Комментарии:
- Этот элемент данных принимает три категории параметров:
- total - общий объем памяти;
- типы памяти, зависящие от платформы: active, anon, buffers, cached, exec, file, free, inactive, pinned, shared, slab, wired;
- оценки на уровне пользователя о том, сколько памяти используется и доступно: 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 поддерживается только в Linux 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 4. В именах хостов поддерживается Punycode. - path - путь к HTML-документу (по умолчанию
/); - port - номер порта (по умолчанию
80для HTTP)
Комментарии:
- Этот элемент данных становится неподдерживаемым, если ресурс, указанный в
host, не существует или недоступен. hostможет быть именем хоста, доменным именем, IPv4- или IPv6-адресом. Но для IPv6-адреса Zabbix agent должен быть скомпилирован с включенной поддержкой 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 4. Punycode поддерживается в именах хостов. - path - путь к HTML-документу (по умолчанию
/); - port - номер порта (по умолчанию
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.
См. поддерживаемые платформы.
Параметры:
- host - имя хоста или URL (в формате
scheme://host:port/path, где обязательным является только host). Допустимые схемы URL: http, https4. Если схема не указана, будет использоваться http. Если указан URL,pathиportдолжны быть пустыми. Указание имени пользователя/пароля при подключении к серверам, требующим аутентификации, например:http://user:[email protected], возможно только при поддержке cURL 4. Punycode поддерживается в именах хостов. - path - путь к HTML-документу (по умолчанию
/); - port - номер порта (по умолчанию
80для HTTP) - regexp - регулярное выражение, описывающее требуемый шаблон;
- length - максимальное число возвращаемых символов;
- output - необязательный шаблон форматирования вывода. Escape-последовательность \0 заменяется совпавшей частью текста (от первого символа, где начинается совпадение, до символа, где совпадение заканчивается), а escape-последовательность \N (где N=1...9) заменяется N-й совпавшей группой (или пустой строкой, если N превышает число захваченных групп).
Комментарии:
- Этот элемент данных становится неподдерживаемым, если ресурс, указанный в
host, не существует или недоступен. hostможет быть именем хоста, доменным именем, IPv4- или IPv6-адресом. Но для IPv6-адреса Zabbix agent должен быть скомпилирован с включенной поддержкой 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, либо пустую строку, если они не заданы.
agent.hostname
Имя узла сети агента.
Возвращаемое значение: String.
См. поддерживаемые платформы.
Возвращает:
- При пассивной проверке — имя первого узла сети, указанного в параметре Hostname файла конфигурации агента;
- При активной проверке — имя текущего узла сети.
agent.ping
Проверка доступности агента.
Возвращаемое значение: ничего - недоступен; 1 - доступен.
См. поддерживаемые платформы.
Используйте функцию триггера nodata() для проверки недоступности узла сети.
agent.variant
Проверка разновидности агента (Zabbix агент или Zabbix агент 2).
Возвращаемое значение: 1 — Zabbix агент; 2 — Zabbix агент 2.
Смотрите Поддерживаемые платформы.
agent.version
Версия Zabbix агента.
Возвращаемое значение: Строка.
Смотрите Поддерживаемые платформы.
Пример возвращаемого значения:
6.0.3
zabbix.stats[<ip>,<port>]
Возвращает набор внутренних метрик сервера Zabbix или прокси.
Если указаны ip и port, метрики извлекаются с удаленного экземпляра; в противном случае — с локального экземпляра.
Возвращаемое значение: JSON string.
См. поддерживаемые платформы.
Параметры:
- ip - список IP/DNS/сетевых масок серверов/прокси, к которым будет выполнен удаленный запрос (по умолчанию
127.0.0.1); - port - порт сервера/прокси, к которому будет выполнен удаленный запрос (по умолчанию
10051)
Комментарии:
- Элемент данных возвращает выбранный набор внутренних метрик. Подробности см. в разделе Удаленный мониторинг статистики Zabbix.
- Обратите внимание, что запрос статистики будет принят только с адресов, перечисленных в параметре
StatsAllowedIPсервер/прокси на целевом экземпляре.
zabbix.stats[<ip>,<port>,queue,<from>,<to>]
Возвращает количество контролируемых элементов данных в очереди, задержанных на сервере Zabbix или прокси.
Если указаны ip и port, метрики извлекаются с удаленного экземпляра; в противном случае — с локального экземпляра.
Возвращаемое значение: JSON string.
См. поддерживаемые платформы.
Параметры:
- ip - список IP/DNS/сетевых масок серверов/прокси, к которым выполняется удаленный запрос (по умолчанию
127.0.0.1); - port - порт сервера/прокси, к которому выполняется удаленный запрос (по умолчанию
10051) - queue - константа (используется как есть)
- from - задержка не менее чем на (по умолчанию
6секунд) - to - задержка не более чем на (по умолчанию бесконечность)
Обратите внимание, что запрос stats будет принят только с адресов, перечисленных в параметре 'StatsAllowedIP' server/proxy на целевом экземпляре.
Сноски
1 Примечание, специфичное для Linux.
Агент Zabbix должен иметь доступ к файловой системе /proc только для чтения.
Патчи ядра с 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 не поддерживаются для loopback-интерфейсов в системах Solaris вплоть до Solaris 10 6/06 включительно, поскольку статистика байтов, ошибок и использования не хранится и/или не сообщается ядром.
Однако если вы отслеживаете систему Solaris через net-snmp, значения могут возвращаться, поскольку net-snmp содержит устаревший код из cmu-snmp, датируемый 1997 годом, который при невозможности прочитать значения байтов из статистики интерфейса возвращает счетчик пакетов (который на loopback-интерфейсах существует), умноженный на произвольное значение 308.
Это основано на предположении, что средняя длина пакета составляет 308 октетов, что является очень грубой оценкой, поскольку предел MTU в системах Solaris для loopback-интерфейсов составляет 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 из командной строки вы также должны учитывать синтаксис командной оболочки.
Например, если определённый параметр ключа должен быть заключён в двойные кавычки, вам придется явно экранировать эти двойные кавычки, в противном случае они будут обрезаны командной оболочкой как специальные символы и не будут переданы утилите 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".
Обратите внимание, что Microsoft иногда помечает некоторые кодовые страницы как «доступные только управляемым приложениям», то есть они доступны только через среду выполнения .NET и недоступны через собственные API Win32.
Агент Zabbix реализует собственную логику преобразования кодировок, поэтому эти кодовые страницы поддерживаются агентом Zabbix даже в тех случаях, когда собственные функции Windows их не предоставляют.
Если в параметре encoding кодировка не указана, применяются следующие стратегии определения:
- Если кодировка не указана (или указана пустая строка), предполагается, что используется UTF-8, а данные обрабатываются «как есть»;
- Анализ BOM - применяется к элементам данных
vfs.file.contents,vfs.file.regexp,vfs.file.regmatch. Предпринимается попытка определить правильную кодировку с помощью метки порядка байтов (BOM) в начале файла. Если BOM отсутствует, вместо этого применяется стандартная стратегия определения (см. выше).
Устранение неполадок с элементами данных агента
В случае пассивных проверок, чтобы элемент данных не остался без значения из-за того, что время ожидания запроса сервера к агенту истекает раньше, следует учитывать следующее:
- Если версия агента старше версии сервера, значение
Timeoutв настройках элемента данных (или глобальное время ожидания) может потребоваться установить выше, чем значениеTimeoutв файле конфигурации агента. - Если версия агента новее версии сервера, значение
Timeoutв файле конфигурации сервера может потребоваться установить выше, чем значениеTimeoutв файле конфигурации агента.