1. Zabbix агент
Обзор
В этом разделе приведены сведения о ключах элементов данных, которые для сбора данных используют общение с Zabbix агентом.
Существуют пассивные и активные проверки. При настройке элемента данных вы можете выбрать требуемый тип:
- Zabbix агент — для пассивных проверок
- Zabbix агент (активный) — для активных проверок
Обратите внимание, что все ключи элементов данных, поддерживаемые агентом Zabbix, также поддерживаются новым поколением Zabbix агента 2. Смотрите дополнительные ключи элементов данных, которые можно использовать только с агентом 2.
Поддерживаемые ключи элементов данных
Ниже перечислены ключи элементов данных, которые можно использовать с агентом Zabbix.
Ключи элементов данных перечислены без параметров и дополнительной информации. Щелкните ключ элемента данных, чтобы увидеть полные сведения.
| Item key | Description | Item group |
|---|---|---|
| kernel.maxfiles | Максимальное число открытых файлов, поддерживаемое ОС. | Kernel |
| kernel.maxproc | Максимальное число процессов, поддерживаемое ОС. | |
| kernel.openfiles | Количество файловых дескрипторов, открытых в данный момент. | |
| log | Мониторинг файла журнала. | Log monitoring |
| log.count | Количество совпавших строк в контролируемом файле журнала. | |
| logrt | Мониторинг файла журнала с ротацией. | |
| logrt.count | Количество совпавших строк в контролируемом файле журнала с ротацией. | |
| modbus.get | Чтение данных Modbus. | Modbus |
| net.dns | Проверка состояния службы DNS. | Network |
| net.dns.perf | Проверка производительности службы DNS. | |
| net.dns.record | Выполнение DNS-запроса. | |
| net.if.collisions | Количество коллизий вне окна. | |
| net.if.discovery | Список сетевых интерфейсов. | |
| net.if.in | Статистика входящего трафика на сетевом интерфейсе. | |
| net.if.out | Статистика исходящего трафика на сетевом интерфейсе. | |
| net.if.total | Сумма статистики входящего и исходящего трафика на сетевом интерфейсе. | |
| net.tcp.listen | Проверка, находится ли этот TCP-порт в состоянии LISTEN. | |
| net.tcp.port | Проверка возможности установить TCP-соединение с указанным портом. | |
| net.tcp.service | Проверка, запущена ли служба и принимает ли она TCP-соединения. | |
| net.tcp.service.perf | Проверка производительности службы TCP. | |
| net.tcp.socket.count | Возвращает количество TCP-сокетов, соответствующих параметрам. | |
| net.udp.listen | Проверка, находится ли этот UDP-порт в состоянии LISTEN. | |
| net.udp.service | Проверка, запущена ли служба и отвечает ли она на UDP-запросы. | |
| net.udp.service.perf | Проверка производительности службы UDP. | |
| net.udp.socket.count | Возвращает количество UDP-сокетов, соответствующих параметрам. | |
| proc.cpu.util | Процент использования CPU процессом. | Processes |
| proc.get | Список процессов ОС и их параметров. | |
| proc.mem | Объем памяти, используемый процессом, в байтах. | |
| proc.num | Количество процессов. | |
| sensor | Показания аппаратного датчика. | Sensors |
| system.boottime | Время загрузки системы. | System |
| system.cpu.discovery | Список обнаруженных CPU/ядер CPU. | |
| system.cpu.intr | Прерывания устройства. | |
| system.cpu.load | Нагрузка CPU. | |
| system.cpu.num | Количество CPU. | |
| system.cpu.switches | Количество переключений контекста. | |
| system.cpu.util | Процент использования CPU. | |
| system.hostname | Имя узла сети системы. | |
| system.hw.chassis | Сведения о корпусе. | |
| system.hw.cpu | Сведения о CPU. | |
| system.hw.devices | Список устройств PCI или USB. | |
| system.hw.macaddr | Список MAC-адресов. | |
| system.localtime | Системное время. | |
| system.run | Выполнение указанной команды на узле сети. | |
| system.stat | Системная статистика. | |
| system.sw.arch | Сведения об архитектуре программного обеспечения. | |
| system.sw.os | Сведения об операционной системе. | |
| system.sw.os.get | Подробные сведения об операционной системе (версия, тип, название дистрибутива, минорная и мажорная версии и т. д). | |
| system.sw.packages | Список установленных пакетов. | |
| system.sw.packages.get | Подробный список установленных пакетов. | |
| system.swap.in | Статистика swap-in (из устройства в память). | |
| system.swap.out | Статистика swap-out (из памяти на устройство). | |
| system.swap.size | Размер пространства подкачки в байтах или в процентах от общего объема. | |
| system.uname | Идентификация системы. | |
| system.uptime | Время работы системы в секундах. | |
| system.users.num | Количество вошедших в систему пользователей. | |
| vfs.dev.discovery | Список блочных устройств и их тип. | Virtual file systems |
| vfs.dev.read | Статистика чтения диска. | |
| vfs.dev.write | Статистика записи на диск. | |
| vfs.dir.count | Количество записей каталога. | |
| vfs.dir.get | Список записей каталога. | |
| vfs.dir.size | Размер каталога. | |
| vfs.file.cksum | Контрольная сумма файла, вычисленная алгоритмом UNIX cksum. | |
| vfs.file.contents | Получение содержимого файла. | |
| vfs.file.exists | Проверка существования файла. | |
| vfs.file.get | Возвращает сведения о файле. | |
| vfs.file.md5sum | MD5-контрольная сумма файла. | |
| vfs.file.owner | Получение владельца файла. | |
| vfs.file.permissions | Возвращает 4-значную строку, содержащую восьмеричное число с правами UNIX. | |
| vfs.file.regexp | Получение строки в файле. | |
| vfs.file.regmatch | Поиск строки в файле. | |
| vfs.file.size | Размер файла. | |
| vfs.file.time | Сведения о времени файла. | |
| vfs.fs.discovery | Список смонтированных файловых систем с их типом и параметрами монтирования. | |
| vfs.fs.get | Список смонтированных файловых систем с их типом, доступным дисковым пространством, статистикой inode и параметрами монтирования. | |
| vfs.fs.inode | Количество или процент inode. | |
| vfs.fs.size | Дисковое пространство в байтах или в процентах от общего объема. | |
| vm.memory.size | Объем памяти в байтах или в процентах от общего объема. | Virtual memory |
| web.page.get | Получение содержимого веб-страницы. | Web monitoring |
| web.page.perf | Время загрузки полной веб-страницы. | |
| web.page.regexp | Поиск строки на веб-странице. | |
| agent.hostmetadata | Метаданные узла сети агента. | Zabbix |
| agent.hostname | Имя узла сети агента. | |
| agent.ping | Проверка доступности агента. | |
| agent.variant | Вариант агента Zabbix (Zabbix agent или Zabbix agent 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[файл,<регулярное выражение>,<кодировка>,<макс. кол-во строк>,<режим>,<вывод>,<максзадержка>,<опции>,<постоянное_хранилище>]
Мониторинг файлов журналов (логов).
Возвращаемое значение: Журнал (лог).
Смотрите Поддерживаемые платформы.
Параметры:
- файл — абсолютный путь и имя файла журнала;
- регулярное выражение — регулярное выражение, описывающее необходимый шаблон содержимого;
- кодировка — идентификатор кодовой страницы;
- макс. кол-во строк — максимальное количество новых строк в секунду, которое агент будет отправлять Zabbix серверу или прокси.
Этот параметр переопределяет значение «MaxLinesPerSecond» в zabbix_agentd.conf;
- режим — возможные значения: all (по умолчанию) или skip — пропуск обработки старых данных (влияет только на недавно созданные элементы данных);
- вывод — опциональный шаблон форматирования вывода.
Управляющая последовательность \0 заменяется найденной частью текста (начиная от первого символа совпадения, заканчивая символом, где совпадение заканчивается), тогда как управляющая последовательность \N (где N=1...9) заменяется N-ой совпадающей группой (или пустой строкой, если N превышает количество найденных групп);
- максзадержка — максимальная задержка в секундах.
Тип: число с плавающей точкой.
Значения: 0 — (по умолчанию) никогда не игнорировать строки в файлах журналов; > 0.0 — игнорировать более старые строки с целью получения наиболее новых строк, проанализированных в течение «максзадержка» секунд.
Перед использованием прочитайте заметки по максзадержка!
- опции — дополнительные опции:
mtime-noreread — не уникальные записи, перечитывать только, если размер файла изменяется (игнорировать изменение времени модификации). (Этот параметр устарел, начиная с 5.0.2, так как сейчас mtime игнорируется.) - постоянное_хранилище (только в zabbix_agentd на Unix системах; не поддерживается в Agent2) — абсолютный путь к директории, где хранить данные долговременного хранения. Смотрите также дополнительные заметки о файлах долговременного хранения.
Комментарии:
- Элемент данных должен быть настроен как активная проверка;
- Если файл не существует или доступ к нему не разрешён, элемент данных перейдёт в неподдерживаемое состояние;
- Если параметр
выводоставить пустым — будет возвращена вся строка, содержащая текст, соответствующий регулярному выражению. Обратите внимание, что все глобальные регулярные выражения, за исключением «Результат ИСТИНА», всегда возвращают всю строку, соответствующую выражению, и параметрвыводигнорируется. - Извлечение содержимого согласно параметру
выводпроизводится на стороне агента.
Примеры:
log[/var/log/syslog]
log[/var/log/syslog,error]
log[/home/zabbix/logs/logfile,,,100]
Пример использования параметра вывод для извлечения числа из записи в журнале:
log[/app1/app.log,"task run [0-9.]+ sec, processed ([0-9]+) records, [0-9]+ errors",,,,\1] #будет соответствовать записи в журнале «2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors», и на сервер будет отправлено только число «6080». Так как отсылается числовое значение, для этого элемента данных «Тип информации» можно изменить на «Числовой (целое положительное)», и это значение можно будет использовать на графиках, в триггерах и т.п.
Пример использования параметра вывод для изменения вывода записи журнала перед отправкой на сервер:
log[/app1/app.log,"([0-9 :-]+) task run ([0-9.]+) sec, processed ([0-9]+) records, ([0-9]+) errors",,,,"\1 RECORDS: \3, ERRORS: \4, DURATION: \2"] #будет соответствовать записи в журнале «2015-11-13 10:08:26 task run 6.08 sec, processed 6080 records, 0 errors», и на сервер будет отправлена изменённая запись «2015-11-13 10:08:26 RECORDS: 6080, ERRORS: 0, DURATION: 6.08».
log.count[файл,<регулярное выражение>,<кодировка>,<макс. кол-во строк>,<режим>,<максзадержка>,<опции>,<постоянное_хранилище>]
Количество совпадающих строк в наблюдаемом файле журнала (логе).
Возвращаемое значение: Целое число.
Смотрите Поддерживаемые платформы.
Параметры:
- файл — абсолютный путь и имя файла журнала;
- регулярное выражение — регулярное выражение, описывающее необходимый шаблон содержимого;
- кодировка — идентификатор кодовой страницы;
- макс. кол-во строк — максимальное количество новых строк в секунду, которое агент будет анализировать (не может превышать 10000).
Значением по умолчанию является 10*«MaxLinesPerSecond» в zabbix_agentd.conf.
- режим — возможные значения: all (по умолчанию) или skip — пропуск обработки старых данных (влияет только на недавно созданные элементы данных).
- максзадержка — максимальная задержка в секундах.
Тип: число с плавающей точкой.
Значения: 0 — (по умолчанию) никогда не игнорировать строки в файлах журналов; > 0.0 — игнорировать более старые строки с целью получения наиболее новых строк, проанализированных в течение «максзадержка» секунд.
Перед использованием прочитайте заметки по максзадержка!
- опции — дополнительные опции:
mtime-noreread — не уникальные записи, перечитывать только, если размер файла изменяется (игнорировать изменения времени модификации). (Этот параметр устарел, начиная с 5.0.2, так как сейчас mtime игнорируется.) - постоянное_хранилище (только в zabbix_agentd на Unix системах; не поддерживается в Agent2) — абсолютный путь к директории, где хранить данные долговременного хранения. Смотрите также дополнительные заметки о файлах долговременного хранения.
Комментарии:
- Элемент данных должен быть настроен как активная проверка;
- Количество совпадающих строк вычисляется за счёт новых строк, начиная со времени последней проверки журнала агентом; таким образом, количество зависит от интервала обновления элемента данных;
- Если файл не существует или доступ к нему не разрешён, элемент данных переходит в неподдерживаемое состояние.
logrt[регулярное выражение файла,<регулярное выражение>,<кодировка>,<макс. кол-во строк>,<режим>,<вывод>,<максзадержка>,<опции>,<постоянное_хранилище>]
Мониторинг файлов журналов (логов) с поддержкой ротации файлов журналов.
Возвращаемое значение: Журнал (лог).
Смотрите Поддерживаемые платформы.
Параметры:
- регулярное выражение файла — абсолютный путь к файлу и регулярное выражение, описывающее его имя.
Обратите внимание, что регулярное выражение применяется только к имени файла и не обязательно должно соответствовать всему имени (например, /path/to/agent будет соответствовать zabbix_agentd.log).
- регулярное выражение — регулярное выражение, описывающее необходимый шаблон содержимого;
- кодировка — идентификатор кодовой страницы;
- макс. кол-во строк — максимальное количество новых строк в секунду, которое агент будет отправлять Zabbix серверу или прокси.
Этот параметр переопределяет значение «MaxLinesPerSecond» в zabbix_agentd.conf.
- режим возможные значения: all (по умолчанию) или skip — пропуск обработки старых данных (влияет только на недавно созданные элементы данных).
- вывод — опциональный шаблон форматирования вывода.
Управляющая последовательность \0 заменяется найденной частью текста (начиная от первого символа совпадения, заканчивая символом, где совпадение заканчивается), тогда как управляющая последовательность \N (где N=1...9) заменяется N-ой совпадающей группой (или пустой строкой, если N превышает количество найденных групп).
- максзадержка — максимальная задержка в секундах. Тип: число с плавающей точкой. Значения: 0 — (по умолчанию) никогда не игнорировать строки в файлах журналов; > 0.0 — игнорировать более старые строки с целью получения наиболее новых строк, проанализированных в течение «максзадержка» секунд. Перед использованием прочитайте заметки по максзадержка!
- опции — тип ротации файлов журналов и другие опции.
Возможные значения:
rotate (по умолчанию),
copytruncate — обратите внимание, что copytruncate нельзя использовать вместе с maxdelay. В этом случае maxdelay должен быть равен 0 или не указан; смотрите заметки о copytruncate,
mtime-reread — не уникальные записи, перечитывать, если время модификации или размер изменились (используется по умолчанию, если явно не указана опцияmtime-*),
mtime-noreread — не уникальные записи, перечитывать только если размер файла изменяется (игнорирование изменения времени модификации). - постоянное_хранилище (только в zabbix_agentd на Unix системах; не поддерживается в Agent2) — абсолютный путь к директории, где хранить данные долговременного хранения. Смотрите также дополнительные заметки о файлах долговременного хранения.
Комментарии:
- Элемент данных должен быть настроен как активная проверка;
- Ротация журналов основывается на времени последней модификации файлов;
- Обратите внимание, что logrt разработан для работы с одним активным файлом журнала, с несколькими другими совпадающими уже устаревшими неактивными файлами. Если, например, директория содержит множество активных файлов журналов, по каждому такому файлу необходимо создавать отдельный элемент данных logrt. В противном случае, если один элемент данных logrt подхватит слишком много файлов, это может привести к исчерпанию памяти и сбою в мониторинге.
- Если параметр
выводоставить пустым — будет возвращена вся строка, содержащая текст, соответствующий регулярному выражению. Обратите внимание, что все глобальные регулярные выражения, за исключием «Результат ИСТИНА», всегда возвращают всю соответствующую выражению строку, и параметрвыводигнорируется. - Извлечение содержимого согласно параметру
выводпроизводится на стороне агента. - В параметре
регулярное_выражение_файлапуть к директории файла журнала и регулярное выражение имени файла журнала должны быть разделены правильным разделителем:- в 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»
Пример использования параметра вывод для извлечения числа из записи в журнале:
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». Так как отсылается числовое значение, для этого элемента данных можно «Тип информации» изменить на «Числовой (целое положительное)», и это значение можно будет использовать на графиках, в триггерах и т.д.
Пример использования параметра вывод для изменения вывода записи журнала перед отправкой на сервер:
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[регулярное выражение файла ,<регулярное выражение>,<кодировка>,<макс. кол-во строк>,<режим>,<максзадержка>,<опции>,<постоянное_хранилище>]
Количество совпадающих строк в наблюдаемом файле журнала (логе) с поддержкой ротации файлов журналов.
Возвращаемое значение: Целое число.
Смотрите Поддерживаемые платформы.
Параметры:
- регулярное выражение файла — абсолютный путь к файлу и регулярное выражение, описывающее его имя.
Обратите внимание, что регулярное выражение применяется только к имени файла и не обязательно должно соответствовать всему имени (например, /path/to/agent будет соответствовать zabbix_agentd.log).
- регулярное выражение — регулярное выражение, описывающее необходимый шаблон содержимого;
- кодировка — идентификатор кодовой страницы;
- макс. кол-во строк — максимальное количество новых строк в секунду, которое агент будет анализировать (не может превышать 10000).
Значением по умолчанию является 10*«MaxLinesPerSecond» в zabbix_agentd.conf.
- режим — возможные значения: all (по умолчанию) или skip — пропуск обработки старых данных (влияет только на недавно созданные элементы данных).
- максзадержка — максимальная задержка в секундах.
Тип: число с плавающей точкой.
Значения: 0 — (по умолчанию) никогда не игнорировать строки в файлах журналов; > 0.0 — игнорировать более старые строки с целью получения наиболее новых строк, проанализированных в течение «максзадержка» секунд.
Перед использованием прочитайте заметки по максзадержка!
- опции — тип ротации файлов журналов и другие опции.
Возможные значения:
rotate (по умолчанию),
copytruncate — обратите внимание, что copytruncate нельзя использовать вместе с maxdelay. В этом случае maxdelay должен быть равен 0 или не указан; смотрите заметки о copytruncate,
mtime-reread — не уникальные записи, перечитывать, если время модификации или размер изменились (по умолчанию),
mtime-noreread — не уникальные записи, перечитывать только если размер файла изменяется (игнорирование изменения времени модификации). - постоянное_хранилище (только в zabbix_agentd на Unix системах; не поддерживается в Agent2) — абсолютный путь к директории, где хранить данные долговременного хранения. Смотрите также дополнительные заметки о файлах долговременного хранения.
Комментарии:
- Элемент данных должен быть настроен как активная проверка;
- Количество совпадающих строк вычисляется за счёт новых строк, начиная со времени последней проверки журнала агентом; таким образом, количество зависит от интервала обновления элемента данных;
- Ротация журналов основывается на времени последней модификации файлов;
- В параметре
регулярное_выражение_файлапуть к директории файла журнала и регулярное выражение имени файла журнала должны быть разделены правильным разделителем:- в Windows разделителем должна быть обратная косая черта (\); прямая косая черта может допускаться в других позициях, за исключением той, которая разделяет путь к директории файла журнала и регулярное выражение имени файла журнала (смотрите примеры ниже).
- в других системах это должна быть прямая косая черта (/).
Примеры для Windows:
logrt.count["c:/dir1/dir2/dir3\filename.*\.log","pattern_to_match"] #подсчёт количества совпадений с шаблоном «pattern_to_match» в журнальных файлах, расположенных в папке «c:/dir1/dir2/dir3».
logrt.count["//example.com/share/dir1/dir2/dir3\filename.*\.log","pattern_to_match"] #подсчёт количества совпадений с шаблоном «pattern_to_match» в журнальных файлах, расположенных на сетевом ресурсе «//example.com/share/dir1/dir2/dir3».
Примеры для других систем:
logrt.count["/home/zabbix/logs/.*","^logfile[0-9]{1,3}$",,100] #подсчёт количества совпадений с шаблоном «^logfile[0-9]{1,3}$» в журнальных файлах, расположенных в папке «/home/zabbix/logs».
logrt.count["/home/user/^logfile_.*_[0-9]{1,3}$","pattern_to_match","UTF-8",100] #подсчёт того, сколько раз шаблон «pattern_to_match» встречается в журнальных файлах, расположенных в «/home/user».
modbus.get[endpoint,<slave id>,<function>,<address>,<count>,<type>,<endianness>,<offset>]
Читает данные Modbus.
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux, Windows.
Параметры:
- endpoint - конечная точка, заданная как
protocol://connection_string; - slave id - ID ведомого устройства;
- function - функция Modbus;
- address - адрес первого регистра, катушки или входа;
- count - количество записей для чтения;
- type - тип данных;
- endianness - порядок байтов;
- offset - количество регистров, начиная с 'address', результаты которых будут отброшены.
В Windows этот элемент данных следует UNC-путям в параметре endpoint, что может представлять риск безопасности.
См. подробное описание параметров.
net.dns[<ip>,имя,<тип>,<время ожидания>,<количество>,<протокол>]
Проверка состояния службы DNS.
Возвращаемые значения: 0 — DNS не работает (сервер не ответил или ответ DNS некорректен); 1 — DNS работает.
Смотрите Поддерживаемые платформы.
Параметры:
- ip (на Windows поддерживается Zabbix агентом 2, игнорируется Zabbix агентом) — IP адрес DNS сервера (оставьте пустым, чтобы использовались DNS сервера по умолчанию);
- имя — проверяемое имя DNS;
- тип — запрашиваемый тип записи (по умолчанию SOA);
- время ожидания (игнорируется в Windows, если только не используется Zabbix агент 2) — время ожидания ответа в секундах (по умолчанию 1 секунда);
- количество (игнорируется в Windows, если только не используется Zabbix агент 2) — количество попыток запросов (по умолчанию 2);
- протокол — используемый протокол при выполнении DNS запросов: udp (по умолчанию) или tcp.
Комментарии:
- Возможные значения для
тип: ANY, A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS (не поддерживается Zabbix агентом на Windows, Zabbix агентом 2 на всех ОС), HINFO, MINFO, TXT, SRV - Для обратных DNS-запросов (когда
typeустановлен на PTR) вы можете указать DNS-имя как в обратном, так и в необратном формате (см. примеры ниже). Обратите внимание, что при запросе записи PTR имя DNS на самом деле является IP-адресом. - Интерационализированные доменные имена не поддерживаются; вместо них, пожалуйста, используйте имена в IDNA кодировке.
Примеры:
net.dns[198.51.100.1,example.com,MX,2,1]
net.dns[,198.51.100.1,PTR]
net.dns[,1.100.51.198.in-addr.arpa,PTR]
net.dns[,2a00:1450:400f:800::200e,PTR]
net.dns[,e.0.0.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.0.f.0.0.4.0.5.4.1.0.0.a.2.ip6.arpa,PTR]
net.dns.perf[<ip>,name,<type>,<timeout>,<count>,<protocol>]
Проверяет производительность службы DNS.
Возвращаемое значение: Float (0 - служба недоступна; seconds - количество секунд, потраченных на ожидание ответа от службы).
См. поддерживаемые платформы.
Параметры:
- 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>,имя,<тип>,<время ожидания>,<количество>,<протокол>]
Выполнение DNS запроса.
Zabbix агент 2 также предоставляет ключ net.dns.get, который предлагает дополнительные возможности, такие как больший набор типов записей и больший контроль над мониторингом DNS.
Возвращаемое значение: строка символов с требуемым типом информации.
Смотрите Поддерживаемые платформы.
Параметры:
- ip (игнорируется в Windows, если только не используется Zabbix агент 2) — IP адрес DNS сервера (оставьте пустым, чтобы использовались DNS сервера по умолчанию);
- имя — проверяемое имя DNS;
- тип — запрашиваемый тип записи (по умолчанию SOA);
- время ожидания (игнорируется в Windows, если только не используется Zabbix агент 2) — время ожидания ответа в секундах (по умолчанию 1 секунда);
- количество (игнорируется в Windows, если только не используется Zabbix агент 2) — количество попыток запросов (по умолчанию 2);
- протокол — используемый протокол при выполнении DNS запросов: udp (по умолчанию) или tcp.
Комментарии:
- Возможные значения для
тип:
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.in[if,<режим>]
Статистика по входящему трафику сетевого интерфейса.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, Solaris5, HP-UX, AIX, MacOS X, OpenBSD, NetBSD, Windows.
На NetBSD требуются права суперпользователя (root).
Параметры:
- if — имя сетевого интерфейса (Unix); полное описание сетевого интерфейса или IPv4 адрес; или, если в фигурных скобках, GUID сетевого интерфейса (Windows);
- режим — возможные значения:
bytes — количество байт (по умолчанию)
packets — количество пакетов
errors — количество ошибок
dropped — количество отброшенных пакетов
overruns (fifo) — количество ошибок FIFO буфера
frame — количество ошибок кадрирования пакетов
compressed — количество сжатых пакетов, полученных драйвером устройства
multicast — количество кадров многоадресного вещания, которые получены драйвером устройства
Комментарии:
- Вы можете использовать этот ключ с шагом предобработки Изменение в секунду для получения статистики байт в секунду;
- Режим 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,<режим>]
Статистика по исходящему трафику сетевого интерфейса.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, Solaris5, HP-UX, AIX, MacOS X, OpenBSD, NetBSD, Windows.
На NetBSD требуются права суперпользователя (root).
Параметры:
- if — имя сетевого интерфейса (Unix); полное описание сетевого интерфейса или IPv4 адрес; или, если в фигурных скобках, GUID сетевого интерфейса (Windows);
- режим — возможные значения:
bytes — количество байт (по умолчанию)
packets — количество пакетов
errors — количество ошибок
dropped — количество отброшенных пакетов
overruns (fifo) — количество ошибок FIFO буфера
collisions (colls) — количество коллизий, обнаруженных на интерфейсе
carrier — количество потерь несущей, обнаруженных драйвером устройства
compressed — количество сжатых пакетов, переданных драйвером устройства
Комментарии:
- Вы можете использовать этот ключ с шагом предобработки Изменение в секунду для получения статистики байт в секунду;
- Режим dropped поддерживается только в Linux, HP-UX;
- Режимы overruns, collision, carrier, compressed поддерживаются только в Linux;
- На HP-UX этот элемент данных не предоставляет сведений о loopback-интерфейсах (например, lo0).
Примеры:
net.if.out[eth0]
net.if.out[eth0,errors]
net.if.total[if,<режим>]
Суммарная статистика входящего и исходящего трафика на сетевом интерфейсе.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, Solaris5, HP-UX, AIX, MacOS X, OpenBSD, NetBSD, Windows.
На NetBSD требуются права суперпользователя (root).
Параметры:
- if — имя сетевого интерфейса (Unix); полное описание сетевого интерфейса или IPv4 адрес; или, если в фигурных скобках, GUID сетевого интерфейса (Windows);
- режим — возможные значения:
bytes — количество байт (по умолчанию)
packets — количество пакетов
errors — количество ошибок
dropped — количество отброшенных пакетов
overruns (fifo) — количество ошибок FIFO буфера
collisions (colls) — количество коллизий, обнаруженных на интерфейсе
compressed — количество сжатых пакетов, переданных или полученных драйвером устройства
Комментарии:
- Вы можете использовать этот ключ с шагом предобработки Изменение в секунду для получения статистики байт в секунду;
- Режим dropped поддерживается только в Linux, HP-UX.
Отброшенные пакеты поддерживаются, только если оба ключа
net.if.inиnet.if.outработают с отброшенными пакетами на вашей платформе. - Режимы overruns, collision, compressed поддерживаются только в Linux;
- На HP-UX этот элемент данных не предоставляет сведений о loopback-интерфейсах (например, lo0).
Примеры:
net.if.total[eth0]
net.if.total[eth0,errors]
net.tcp.listen[порт]
Проверка, находится ли TCP порт в состоянии LISTEN.
Возвращаемые значения: 0 — не находится в состоянии LISTEN; 1 — находится в состоянии LISTEN.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, MacOS X, Windows.
Параметр:
- порт — номер TCP порта
На ядрах Linux 2.6.14 и более новых информация о TCP сокетах в состоянии listen берётся из интерфейса ядра NETLINK, если это возможно. В противном случае информация берётся из файлов /proc/net/tcp и /proc/net/tcp6.
Пример:
net.tcp.listen[80]
net.tcp.port[<ip>,порт]
Проверка возможности создания TCP подключения на указанный номер порта.
Возвращаемые значения: 0 — не удалось подключиться; 1 — удалось подключиться.
Смотрите Поддерживаемые платформы.
Параметры:
- ip — IP адрес или DNS имя (по умолчанию 127.0.0.1);
- порт — номер порта.
Комментарии:
- Для простого тестирования производительности TCP используйте
net.tcp.service.perf[tcp,<ip>,<порт>]; - Эти проверки могут привести к дополнительным записям в системных файлах журналов (обычно журналируются сессии SMTP и SSH).
Пример:
net.tcp.port[,80] #можно использовать для проверки доступности веб-сервера, работающего на 80 порту
net.tcp.service[сервис,<ip>,<порт>]
Проверка того, что сервис запущен и принимает TCP подключения.
Возвращаемые значения: 0 — сервис недоступен; 1 — сервис запущен.
Смотрите Поддерживаемые платформы.
Параметры:
- сервис — один из: ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https или telnet (смотрите подробности);
- ip — IP адрес или DNS имя (по умолчанию 127.0.0.1);
- порт — номер порта (по умолчанию используется стандартный номер порта сервиса).
Комментарии:
- Эти проверки могут привести к дополнительным записям в системных файлах журналов (обычно журналируются сессии SMTP и SSH);
- Проверка шифрованных протоколов (таких как IMAP на 993 порту или POP на 995 порту) в настоящее время не поддерживается.
В качестве обходного решения, пожалуйста, для подобных проверок используйте
net.tcp.port[]. - Проверка LDAP и HTTPS на платформе Windows поддерживается только Zabbix агентом 2;
- Проверка telnet ищет запрос на вход (с «:» в конце).
Пример:
net.tcp.service[ftp,,45] #можно использовать для тестирования доступности FTP сервера на TCP 45 порту.
net.tcp.service.perf[сервис,<ip>,<порт>]
Проверка производительности TCP сервиса.
Возвращаемые значения: Число с плавающей точкой (0 — сервис недоступен; секунды — количество секунд, потраченное на подключение к сервису).
Смотрите Поддерживаемые платформы.
Параметры:
- сервис — один из: ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https или telnet (смотрите подробности);
- ip — IP адрес или DNS имя (по умолчанию 127.0.0.1);
- порт — номер порта (по умолчанию используется стандартный номер порта сервиса).
Комментарии:
- Проверка шифрованных протоколов (таких как IMAP на 993 порту или POP на 995 порту) в настоящее время не поддерживается.
В качестве обходного решения, пожалуйста, для подобных проверок используйте
net.tcp.service.perf[tcp,<ip>,<порт>]. - Проверка 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[сервис,<ip>,<порт>]
Проверка, запущен ли сервис и отвечает ли он на UDP запросы.
Возвращаемые значения: 0 — сервис недоступен; 1 — сервис запущен.
Смотрите Поддерживаемые платформы.
Параметры:
- сервис — ntp (смотрите подробности);
- ip — IP адрес или DNS имя (по умолчанию 127.0.0.1);
- порт — номер порта (по умолчанию используется стандартный номер порта сервиса).
Пример:
net.udp.service[ntp,,45] #можно использовать для тестирования доступности NTP сервиса на 45 порту UDP
net.udp.service.perf[сервис,<ip>,<порт>]
Проверка производительности UDP сервиса.
Возвращаемые значения: Число с плавающей точкой (0 — сервис недоступен; секунды — количество секунд, потраченное на ожидание ответа от сервиса).
Смотрите Поддерживаемые платформы.
Параметры:
- сервис — ntp (смотрите подробности);
- ip — IP адрес или DNS имя (по умолчанию 127.0.0.1);
- порт — номер порта (по умолчанию используется стандартный номер порта сервиса).
Пример:
net.udp.service.perf[ntp] #можно использовать для тестирования времени отклика от NTP сервиса
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[<имя>,<пользователь>,<тип>,<cmdline>,<режим>,<зона>]
Использование процессом CPU в процентах.
Возвращаемое значение: Число с плавающей точкой.
Поддерживаемые платформы: Linux, Solaris6.
Параметры:
- имя — имя процесса (по умолчанию все процессы);
- пользователь — имя пользователя (по умолчанию все пользователи));
- тип — тип использования CPU: total (по умолчанию), user или system;
- cmdline — фильтр по командной строке (является регулярным выражением);
- режим — режим сбора данных: avg1 (по умолчанию), avg5 или avg15;
- зона — целевая зона: current (по умолчанию) или all. Этот параметр поддерживается только на платформе Solaris.
Комментарии:
- Возвращаемое значение основывается на использовании одного ядра CPU, в процентах. Например, утилизация CPU процесса, полностью использующего два ядра, равна 200%.
- Данные использования CPU процессами собираются коллектором, который поддерживает максимально до 1024 уникальных (по имени, пользователю и командной строке) запросов. Запросы, к которым не было обращения в течение последних 24 часов, удаляются из коллектора.
- В случае, когда агент скомпилирован на Solaris без поддержки зон, если задать параметр
зоназначением current (или по умолчанию) и запустить его на более новом 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[<имя>,<пользователь>,<режим>,<cmdline>,<тип памяти>]
Количество памяти, используемое процессом, в байтах.
Возвращаемое значение: Целое число — с режимом, равным max, min, sum; Число с плавающей точкой — с режимом, равным avg
Поддерживаемые платформы: Linux, FreeBSD, Solaris, AIX, OpenBSD, NetBSD.
Параметры:
- имя — имя процесса (по умолчанию все процессы);
- пользователь — имя пользователя (по умолчанию все пользователи);
- режим — возможные значения: avg, max, min или sum (по умолчанию);
- cmdline — фильтр по командной строке (является регулярным выражением);
- тип памяти — тип памяти, используемый процессом
Комментарии:
- Параметр
тип памятиподдерживается только на Linux, FreeBSD, Solaris6, AIX; - Когда несколько процессов используют разделяемую память, сумма используемой процессами памяти может дать в результате большие, нереальные значения.
Смотрите примечания по выбору процессов с параметрамиимяи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[<имя>,<пользователь>,<состояние>,<cmdline>,<зона>]
Количество процессов.
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, Solaris6, HP-UX, AIX, OpenBSD, NetBSD, Windows.
Параметры:
- имя — имя процесса (по умолчанию все процессы);
- пользователь — имя пользователя (по умолчанию все пользователи);
- состояние — возможные значения:
all (по умолчанию),
disk — непрерываемый сон,
run — в процессе работы,
sleep — прерываемый сон,
trace — остановлен,
zomb — зомби; - cmdline — фильтр по командной строке (является регулярным выражением);
- зона — целевая зона: current (по умолчанию) или all. Этот параметр поддерживается только на платформе Solaris.
Комментарии:
- Параметры состояния disk и trace поддерживаются только в Linux, FreeBSD, OpenBSD, NetBSD;
- В системах Windows поддерживаются только параметры
имяandпользователь; - Когда этот элемент данных вызывается из командной строки и содержит параметр командной строки (например, при использовании тестового режима агента:
zabbix_agentd -t proc.num[,,,apache2]), будет засчитан один дополнительный процесс, так как агент посчитает самого себя; - В случае, когда агент скомпилирован на Solaris без поддержки зон, если задать параметр
зоназначением current (или по умолчанию) и запустить его на более новом Solaris, где зоны поддерживаются, тогда агент вернёт NOTSUPPORTED (агент не может ограничить результаты в пределах только текущей зоны). Однако, значение all в этом случае поддерживается. - Смотрите примечания по выбору процессов с параметрами
имяиcmdline(специфично для Linux).
Примеры:
proc.num[,mysql] #количество процессов, выполняемых под пользователем mysql
proc.num[apache2,www-data] #количество процессов apache2, выполняемых под пользователем www-data
proc.num[,oracle,sleep,oracleZABBIX] #количество процессов в спящем состоянии, выполняемых под пользователем oracle и имеющих oracleZABBIX в командной строке
sensor[device,sensor,<mode>]
Показания аппаратного датчика.
Возвращаемое значение: Float.
Поддерживаемые платформы: Linux, OpenBSD.
Параметры:
- 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.
См. поддерживаемые платформы.
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[<тип>, <преобразование>]
Системное имя хоста.
Возвращаемое значение: Строка.
Смотрите Поддерживаемые платформы.
Параметры:
- тип — возможные значения: netbios (по умолчанию на Windows), host (по умолчанию на Linux), shorthost (возвращает часть имени хоста до первой точки, всю строку для имён без точек), fqdn (возвращает полное доменное имя);
- преобразование — возможные значения: 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[<интерфейс>,<формат>]
Список MAC адресов.
Возвращаемое значение: Строка.
Поддерживаемые платформы: Linux.
Параметры:
- интерфейс — all (по умолчанию) или регулярное выражение;
- формат — full (по умолчанию) или short
Комментарии:
- Список MAC адресов интерфейсов, чьи имена соответствуют заданному в параметре
интерфейсрегулярному выражению (all перечисляет все интерфейсы); - Если
форматзадан значением short, имена интерфейсов и одинаковые MAC адреса не попадут в список.
Пример:
system.hw.macaddr["eth0$",full] → [eth0] 00:11:22:33:44:55
system.localtime[<тип>]
Системное время.
Возвращаемое значение: Целое число — с тип как utc; String — с тип как local.
Смотрите Поддерживаемые платформы.
Параметры:
- тип — возможные значения: utc — (по умолчанию) время с начала Эпохи (00:00:00 UTC, Январь 1, 1970), измеренное в секундах, или же local — время в формате 'гггг-мм-дд,чч:мм:сс.ннн,+чч:мм'
С Zabbix агентом необходимо использовать только как пассивную проверку; с Zabbix агентом 2 можно настраивать и как активную проверку.
Пример:
system.localtime[local] #создайте элемент данных, используя этот ключ, и далее используйте его для отображения времени узла сети в виджете панели *Часы*.
system.run[команда,<режим>]
Выполнение указанной команды на узле сети.
Возвращаемое значение: Текст с результатом выполнения команды, либо 1 — c режимом со значением nowait (независимо от результата выполнения команды).
Смотрите Поддерживаемые платформы.
Параметры:
- команда — выполняемая команда;
- режим — возможные значения: wait — ожидать завершения выполнения (по умолчанию) или nowait — не ожидать.
Комментарии:
- Этот элемент данных по умолчанию отключён. Узнайте, как их включить;
- Возвращаемое значение элемента данных является стандартным выводом совместно со стандартным выводом ошибок, которые получены от команды. Код завершения не проверяется;
- Для корректной обработки возвращаемое командой значение должно иметь тип данных
текст. Пустой результат также допустим; - Возвращаемое значение ограничено 16 МБ (включая конечные пробелы, которые усекаются); также применяются ограничения баз данных;
- Смотрите также: Выполнение команд.
Пример:
system.run[ls -l /] #возвратить подробный список файлов в корневой папке
system.stat[ресурс,<тип>]
Системная статистика.
Возвращаемое значение: Целое число или число с плавающей точкой.
Поддерживаемые платформы: AIX.
Параметры:
- ent — количество процессорных единиц, выделенных на ресурс (число с плавающей точкой);
- kthr,<тип> — информация о состояниях потоков ядра:
r — среднее количество запускаемых потоков ядра (число с плавающей точкой)
b — среднее количество потоков ядра, помещённых в очередь ожидания Менеджера Виртуальный Памяти (число с плавающей точкой) - memory,<тип> — информация об использовании виртуальной и реальной памяти:
avm — активные виртуальные страницы (целое число)
fre — размер свободного списка (целое число) - page,<тип> — информация об ошибках страниц и активности страниц:
fi — количество загрузок страниц в секунду (число с плавающей точкой)
fo — количество выгрузок страниц в секунду (число с плавающей точкой)
pi — страницы, загруженные из пространства подкачки (число с плавающей точкой)
po — страницы, выгруженные в пространство подкачки (число с плавающей точкой)
fr — освобождённые страницы (замена страниц) (число с плавающей точкой)
sr — количество страниц, сканированных алгоритмом замены страниц (число с плавающей точкой) - faults,<тип> — соотношение ловушек и прерываний:
in — прерывания устройства (число с плавающей точкой)
sy — системные вызовы (число с плавающей точкой)
cs — переключения контекста потока ядра (число с плавающей точкой) - cpu,<тип> — распределение процессорного времени в процентах:
us — пользовательское время (число с плавающей точкой)
sy — системное время (число с плавающей точкой)
id — время простоя (число с плавающей точкой)
wa — время простоя, в ходе которого система обрабатывала запросы I/O диска/NFS (число с плавающей точкой)
pc — количество использованных физических процессоров (число с плавающей точкой)
ec — процент потреблённой выделенной ёмкости (число с плавающей точкой)
lbusy — отображает утилизацию в процентах для логических процессор(ов), которая произошла при выполнении уровней пользователя и системы (число с плавающей точкой)
app — отображает количество доступных физических процессоров в общем пуле (число с плавающей точкой) - disk,<тип> — статистика о дисках:
bps — показывает объём данных, переданных (прочитанных или записанных) на диск в байтах в секунду (целое число)
tps — показывает количество передач за секунду, которые произошли на физическом диске/ленте (число с плавающей точкой)
Комментарии:
- Обратите внимание на следующие ограничения в этих элементах данных:
system.stat[cpu,app]— поддерживается только на AIX LPAR с типом «Shared»
system.stat[cpu,ec]— поддерживается на AIX LPAR с типом «Shared» и «Dedicated» («Dedicated» всегда возвращает 100 (процентов))
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[<информация>]
Информация об операционной системе.
Возвращаемое значение: Строка.
Поддерживаемые платформы: Linux, Windows.
Параметр:
- информация — возможные значения: full (по умолчанию), short или name
Информация извлекается из (обратите внимание, что не все файлы и опции представлены во всех дистрибутивах):
/proc/version(full) в Linux;/proc/version_signature(short) в Linux;- Параметр PRETTY_NAME из
/etc/os-releaseна Linux-системах, которые его поддерживают, или/etc/issue.net(name); - ключ реестра
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersionв Windows.
Примеры:
system.sw.os[short] → Ubuntu 2.6.35-28.50-generic 2.6.35.11
system.sw.os[full] → [s|Windows 10 Enterprise 22621.1.asd64fre.ni_release.220506-1250 Build 22621.963]
system.sw.os.get
Подробная информация об операционной системе (версия, тип, название дистрибутива, младшая и старшая версии и т. д).
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux, Windows.
system.sw.packages[<регулярное выражение>,<менеджер>,<формат>]
Список установленных пакетов.
Возвращаемое значение: Текст.
Поддерживаемые платформы: Linux.
Параметры:
- регулярное выражение — all (по умолчанию) или регулярное выражение;
- менеджер — all (по умолчанию) или конкретный менеджер пакетов;
- формат — full (по умолчанию) или short.
Комментарии:
- Список (в алфавитном порядке) установленных пакетов, имена которых соответствуют заданному регулярному выражению (all перечисляет их все);
- Поддерживаемые менеджеры пакетов (выполняемые команды):
dpkg (dpkg --get-selections)
pkgtool (ls /var/log/packages)
rpm (rpm -qa)
pacman (pacman -Q)
portage - Если
форматуказан значением full, пакеты группируются по менеджерам пакетов (каждый менеджер с отдельной строки, которая начинается с его имени, заключённого в квадратные скобки); - Если
форматуказан значением 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[<устройство>,<тип>]
Статистика файла подкачки в (с устройства в память).
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, OpenBSD.
Parameters:
- устройство — указать устройство, используемое для файла подкачки (только Linux) или all (по умолчанию);
- тип — возможные значения: count (количество подкачек, по умолчанию на платформах, отличных от Linux), sectors (подкачанные сектора) или pages (подкачанные страницы, по умолчанию в Linux).
Комментарии:
- Источником этой информации является:
/proc/swaps, /proc/partitions, /proc/stat (Linux 2.4)
/proc/swaps, /proc/diskstats, /proc/vmstat (Linux 2.6) - Обратите внимание, что pages будет работать, только если устройство не указано;
- Параметр типа sectors поддерживается только в Linux.
Пример:
system.swap.in[,pages]
system.swap.out[<устройство>,<тип>]
Статистика файла подкачки из (из памяти на устройство).
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, FreeBSD, OpenBSD.
Параметры:
- устройство — указать устройство, используемое для файла подкачки (только Linux) или all (по умолчанию);
- тип — возможные значения: count (количество выгрузок, по умолчанию на платформах, отличных от Linux), sectors (выгруженные сектора) или pages (выгруженные страницы, по умолчанию в Linux).
Комментарии:
- Источником этой информации является:
/proc/swaps,/proc/partitions,/proc/stat(Linux 2.4)/proc/swaps,/proc/diskstats,/proc/vmstat(Linux 2.6) - Обратите внимание, что pages будет работать, только если устройство не указано;
- Параметр типа sectors поддерживается только в Linux.
Пример:
system.swap.out[,pages]
system.swap.size[<устройство>,<тип>]
Размер файла подкачки в байтах или процентах от общего размера.
Возвращаемое значение: Целое число — для количества байт; Число с плавающей точкой — для процентов.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, AIX, OpenBSD, Windows.
Параметры:
- устройство — устройство, используемое для файла подкачки (только FreeBSD) или all (по умолчанию);
- тип — возможные значения: free (свободно в файле подкачки, по умолчанию), pfree (свободно в файле подкачки, в процентах), pused (используемое место в файле подкачки, в процентах), total (полный размер файла подкачки) или used (используется места в файле подкачки).
Комментарии:
- Обратите внимание, что pfree, pused не поддерживаются в Windows, если размер подкачки равен 0;
- Если устройство не указано, Zabbix агент будет брать во внимание только swap устройства (файлы), физическая память будет игнорироваться.
Например, на Solaris системах команда
swap -sвключает часть физической памяти и swap устройства (в отличие от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.read[<устройство>,<тип>,<режим>]
Статистика чтения диска.
Возвращаемое значение: Целое число — с тип, равным sectors, operations, bytes; Число с плавающей точкой — с тип, равным sps, ops, bps.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, AIX, OpenBSD.
Параметры:
- устройство — дисковое устройство (по умолчанию all 3);
- тип — возможные значения: sectors, operations, bytes, sps, ops или bps (sps, ops, bps соответствуют: секторам, операциям, байтам в секунду соответственно);
- режим — возможные значения: avg1 (усреднение за минуту, по умолчанию), avg5 или avg15.
Этот параметр поддерживается, только если
типодин из: sps, ops, bps.
Комментарии:
- При использовании интервала обновления три часа или более2 этот элемент данных всегда будет возвращать «0»;
- Параметры типа sectors и sps поддерживаются только в Linux;
- Параметр типа ops поддерживается только в Linux и FreeBSD;
- Параметр типа bps поддерживается только в FreeBSD;
- Параметр типа bytes поддерживается только в FreeBSD, Solaris, AIX, OpenBSD;
- Параметр
режимподдерживается только в Linux, FreeBSD; - Можно использовать относительные имена устройств (например,
sda), а также необязательный префикс /dev/ (например,/dev/sda) - Поддерживаются логические тома LVM;
- Значения по умолчанию параметра «тип» для различных ОС:
AIX — operations
FreeBSD — bps
Linux — sps
OpenBSD — operations
Solaris — bytes - sps, ops и bps на поддерживаемых платформах ограничены 1024 устройствами (1023 индивидуальных и одно для all).
Пример:
vfs.dev.read[,operations]
vfs.dev.write[<устройство>,<тип>,<режим>]
Статистика записи на диск.
Возвращаемое значение: Целое число — при тип равном sectors, operations, bytes; Число с плавающей точкой — при тип равном sps, ops, bps.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, AIX, OpenBSD.
Параметры:
- устройство — дисковое устройство (по умолчанию all 3);
- тип — возможные значения: sectors, operations, bytes, sps, ops или bps (sps, ops, bps соответствуют: секторам, операциям, байтам в секунду соответственно);
- режим — возможные значения: avg1 (усреднение за минуту, по умолчанию), avg5 или avg15.
Этот параметр поддерживается, только если
типодин из: sps, ops, bps.
Комментарии:
- При использовании интервала обновления три часа или более2 этот элемент данных всегда будет возвращать «0»;
- Параметры типа sectors и sps поддерживаются только в Linux;
- Параметр типа ops поддерживается только в Linux и FreeBSD;
- Параметр типа bps поддерживается только в FreeBSD;
- Параметр типа bytes поддерживается только в FreeBSD, Solaris, AIX, OpenBSD;
- Параметр
режимподдерживается только в Linux, FreeBSD; - Можно использовать относительные имена устройств (например,
sda), а также необязательный префикс /dev/ (например,/dev/sda); - Поддерживаются логические тома LVM;
- Значения по умолчанию параметра «тип» для различных ОС:
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). - Время выполнения ограничено значением тайм-аута в конфигурации агента configuration (3 sec). Поскольку обход больших каталогов может занять больше времени, данные возвращены не будут, и элемент данных перейдет в состояние неподдерживаемого. Частичный результат не возвращается.
- При фильтрации по размеру значимы только обычные файлы.
В 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 string.
См. поддерживаемые платформы.
Параметры:
- 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). - Время выполнения ограничено значением тайм-аута в конфигурации агента configuration. Поскольку обход больших каталогов может занять больше времени, данные не будут возвращены, и элемент данных станет неподдерживаемым. Частичный список возвращен не будет.
- При фильтрации по размеру значимы только размеры обычных файлов.
В 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[директория,<regex_вкл>,<regex_искл>,<режим>,<макс_глубина>,<regex_искл_директории>]
Размер директории (в байтах).
Возвращаемое значение: Целое число.
Поддерживаемые платформы: Linux, Windows.
Элемент данных может работать на других UNIX-подобных платформах.
Параметры:
- директория — абсолютный путь к директории;
- regex_вкл — регулярное выражение, описывающее шаблон включаемых имён сущностей (файлов, директорий и символических ссылок); если пусто, включается всё (по умолчанию);
- regex_искл — регулярное выражение, описывающее шаблон исключаемых имен сущностей (файлов, директорий и символических ссылок); если пусто (по умолчанию), исключения не применяются;
- режим — возможные значения: apparent (по умолчанию) — получение реальных размеров файлов вместо использования диска (работает как
du -sb директория), disk — получение использования диска (работает какdu -s -B1 директория). В отличие от командыdu, элемент данных vfs.dir.size при вычислении размера директории учитывает скрытые файлы (работает какdu -sb .[^.]* *в пределах директории). - макс_глубина — максимальная глубина сканируемых поддиректорий: -1 (по умолчанию) — без ограничения, 0 — не опускаться в поддиректории.
- regex_искл_директории — регулярное выражение, описывающее шаблон имён исключаемых директорий.
Всё содержимое директории будет исключено (в отличие от
regex_искл).
Комментарии:
- В Windows этот элемент данных использует UNC-пути, что может представлять собой угрозу безопасности;
- Подсчитываются только те директории, к которым пользователь zabbix имеет по крайней мере права чтения. Для директорий с доступом только на чтение рассчитывается размер самой директории. Директории с доступом на чтение и выполнение обсчитываются, включая содержимое.
- При наличии больших директорий или медленных дисков этот элемент данных может превысить время ожидания из-за настройки Timeout в файлах конфигурации агента и сервера/прокси. При необходимости увеличьте эти значения времени ожидания.
- Ограничение размера файлов зависит от наличия поддержки больших файлов.
Примеры:
vfs.dir.size[/tmp,log] #вычисление размеров всех файлов в /tmp, которые содержат в своём имени «log»
vfs.dir.size[/tmp,log,^.+\.old$] #вычисление размеров всех файлов в /tmp, которые содержат в своём имени «log», исключая файлы с именами, оканчивающимися на «.old»
vfs.file.cksum[файл,<режим>]
Контрольная сумма файла, вычисленная по алгоритму, используемому в UNIX cksum.
Возвращаемое значение: Целое число — с режимом в значении crc32, Строка — с режимом в значениях md5, sha256.
Смотрите Поддерживаемые платформы.
Параметры:
- файл — абсолютный путь к файлу;
- режим — crc32 (default), md5 или sha256.
Комментарии:
- В Windows этот элемент данных использует UNC-пути, что может представлять собой угрозу безопасности;
- Ограничение размера файла зависит от поддержки больших файлов.
Пример:
vfs.file.cksum[/etc/passwd]
Примеры возвращаемых значений (для crc32/md5/sha256 соответственно):
675436101
9845acf68b73991eb7fd7ee0ded23c44
ae67546e4aac995e5c921042d0cf0f1f7147703aa42bfbfb65404b30f238f2dc
vfs.file.contents[файл,<кодировка>]
Получение содержимого файла7.
Возвращаемое значение: Текст.
Смотрите Поддерживаемые платформы.
Параметры:
- файл — абсолютный путь к файлу;
- кодировка — идентификатор кодовой страницы.
Комментарии:
- В Windows этот элемент данных использует UNC-пути, что может представлять собой угрозу безопасности;
- Возвращаемое значение ограничено 16 МБ (включая конечные пробелы, которые усекаются); также применяются ограничения баз данных;
- Возвращается пустая строка, если файл пустой или содержит только символы LF/CR;
- Маркер последовательности байтов (BOM) исключён из вывода.
Пример:
vfs.file.contents[/etc/passwd]
vfs.file.exists[файл,<типы_вкл>,<типы_искл>]
Проверка существования файла.
Возвращаемое значение: 0 — файл не найден; 1 — файл заданного типа существует.
Смотрите Поддерживаемые платформы.
Параметры:
- файл — абсолютный путь к файлу;
- типы_вкл — список включаемых типов файлов, возможные значения: file (обычный файл, по умолчанию (если типы_искл не задан)), dir (директория), sym (символическая ссылка), sock (сокет), bdev (блочное устройство), cdev (устройство посимвольного ввода-вывода), fifo (FIFO), dev (синоним к "bdev,cdev"), all (все вышеупомянутые типы, по умолчанию если типы_искл задан).
- типы_искл — список исключаемых типов файлов, смотрите типы_вкл для получения возможных значений (по умолчанию никакие типы не исключаются).
Комментарии:
- В Windows этот элемент данных использует UNC-пути, что может представлять собой угрозу безопасности;
- Несколько типов необходимо разделять запятой и весь список заключать в "" кавычки;
- Если какие-либо типы записей указаны как в <типы_вкл>, так и в <типы_искл>, файлы этих типов будут исключены;
- Ограничение размера файла зависит от поддержки больших файлов.
Примеры:
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[файл]
MD5 контрольная сумма файла.
Возвращаемое значение: Строка (MD5 хеш-сумма файла).
Смотрите Поддерживаемые платформы.
Параметр:
- файл — абсолютный путь к файлу
Комментарии:
- В Windows этот элемент данных использует UNC-пути, что может представлять собой угрозу безопасности;
- Ограничение размера файла зависит от поддержки больших файлов.
Пример:
vfs.file.md5sum[/usr/local/etc/zabbix_agentd.conf]
Пример возвращаемого значения:
b5052decb577e0fffd622d6ddc017e82
vfs.file.owner[файл,<тип_владельца>,<тип_результата>]
Получение владельца файла.
Возвращаемое значение: Строка.
Смотрите Поддерживаемые платформы.
Параметры:
- файл — абсолютный путь к файлу;
- тип_владельца — user (по умолчанию) или group (только в Unix);
- тип_результата — 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[файл,регулярное выражение,<кодировка>,<начальная строка>,<конечная строка>,<вывод>]
Извлечение строки в файле7.
Возвращаемое значение: Строка, содержащая совпадающую подстроку, или то, что определено в дополнительном параметре вывод.
Смотрите Поддерживаемые платформы.
Параметры:
- файл — абсолютный путь к файлу;
- регулярное выражение — регулярное выражение, описывающее требуемый шаблон;
- кодировка — идентификатор кодовой страницы;
- начальная строка — номер первой строки для поиска (по умолчанию первая строка файла);
- конечная строка — номер последней строки для поиска (по умолчанию последняя строка файла);
- вывод — дополнительный шаблон форматирования вывода. Управляющая последовательность \0 заменяется найденной частью текста (начиная от первого символа совпадения, заканчивая символом, где совпадение заканчивается), тогда как управляющая последовательность \N (где N=1..9) заменяется N-ной совпадающей группой (или пустой строкой, если N превышает количество найденных групп).
Комментарии:
- В Windows этот элемент данных использует UNC-пути, что может представлять собой угрозу безопасности;
- Ограничение размера файла зависит от поддержки больших файлов.
- Возвращается только первая совпавшая строка;
- Если совпадений с выражением не найдено, будет возвращена пустая строка;
- Маркер последовательности байтов (BOM) исключается из вывода;
- Извлечение содержимого при использовании параметра
выводвыполняется агентом.
Примеры:
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[файл,регулярное выражение,<кодировка>,<начальная строка>,<конечная строка>]
Поиск строки в файле7.
Возвращаемые значения: 0 — совпадение не найдено; 1 — найдено.
Смотрите Поддерживаемые платформы.
Параметры:
- файл — абсолютный путь к файлу;
- регулярное выражение — регулярное выражение, описывающее требуемый шаблон;
- кодировка — идентификатор кодовой страницы;
- начальная строка — номер первой строки для поиска (по умолчанию первая строка файла);
- конечная строка — номер последней строки для поиска (по умолчанию последняя строка файла).
Комментарии:
- В Windows этот элемент данных использует UNC-пути, что может представлять собой угрозу безопасности;
- Ограничение размера файла зависит от поддержки больших файлов.
- Маркер последовательности байтов (BOM) игнорируется.
Пример:
vfs.file.regmatch[/var/log/app.log,error]
vfs.file.size[файл,<режим>]
Размер файла (в байтах).
Возвращаемое значение: Целое число.
Смотрите Поддерживаемые платформы.
Параметры:
- файл — абсолютный путь к файлу;
- режим — возможные значения: bytes (по умолчанию) или lines (пустые строки также считаются).
Комментарии:
- В Windows этот элемент данных использует UNC-пути, что может представлять собой угрозу безопасности;
- Пользователь zabbix должен иметь права на чтение файла;
- Ограничение размера файла зависит от поддержки больших файлов.
Пример:
vfs.file.size[/var/log/syslog]
vfs.file.time[файл,<режим>]
Информация о времени файла.
Возвращаемое значение: Целое число (Unix timestamp).
Смотрите Поддерживаемые платформы.
Параметры:
- файл — полный путь к файлу;
- режим — возможные значения:
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
Список смонтированных файловых систем с их типом, доступным дисковым пространством, статистикой inode и параметрами монтирования.
Может использоваться для низкоуровневого обнаружения.
Возвращаемое значение: JSON string.
Поддерживаемые платформы: Linux, FreeBSD, Solaris, HP-UX, AIX, MacOS X, OpenBSD, NetBSD, Windows.
Комментарии:
- Также сообщаются файловые системы, у которых количество inode равно нулю, что может быть характерно для файловых систем с динамическими inode (например, btrfs).
- См. также: Обнаружение смонтированных файловых систем.
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 (used, percentage), available или pavailable (available, percentage).
Комментарии:
- Этот элемент данных принимает три категории параметров:
- 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[хост,<путь>,<порт>]
Получение содержимого веб-страницы.
Возвращаемое значение: Исходная веб-страница в виде текста (включая заголовки).
Смотрите Поддерживаемые платформы.
Параметры:
- хост — имя хоста или URL (в виде
схема://хост:порт/путь, где обязателен только хост). Допустимые схемы URL: http, https4. При отсутствии схемы будет обрабатываться как http. Если указан URL, тогда параметрыпутьипортдолжны быть пустыми. При подключении к серверам, которые требуют аутентификацию, возможность указать имя пользователя/пароль, например:http://user:[email protected], имеется только с поддержкой cURL 4. В именах хостов поддерживается punycode. - путь — путь к HTML документу (по умолчанию /);
- порт — номер порта (по умолчанию 80 для HTTP)
Комментарии:
- Этот элемент данных становится неподдерживаемым, если заданный в
хостресурс не существует или недоступен; хостможет быть именем хоста, доменным именем, адресом IPv4 или IPv6. Но для поддержки IPv6 адресов Zabbix агент должен быть скомпилирован с включённой поддержкой IPv6.
Примеры:
web.page.get[www.example.com,index.php,80]
web.page.get[https://www.example.com]
web.page.get[https://blog.example.com/?s=zabbix]
web.page.get[localhost:80]
web.page.get["[::1]/server-status"]
web.page.perf[хост,<путь>,<порт>]
Время полной загрузки веб-страницы (в секундах).
Возвращаемое значение: Число с плавающей точкой.
Смотрите Поддерживаемые платформы.
Параметры:
- хост — имя хоста или URL (в виде
схема://хост:порт/путь, где обязателен только хост). Допустимые схемы URL: http, https4. При отсутствии схемы будет обрабатываться как http. Если указан URL, тогда параметрыпутьипортдолжны быть пустыми. При подключении к серверам, которые требуют аутентификацию, возможность указать имя пользователя/пароль, например:http://user:[email protected], имеется только с поддержкой cURL 4. В именах хостов поддерживается punycode. - путь — путь к HTML документу (по умолчанию /);
- порт — номер порта (по умолчанию 80 для HTTP)
Комментарии:
- Этот элемент данных становится неподдерживаемым, если заданный в
хостресурс не существует или недоступен; хостможет быть именем хоста, доменым именем, адресом IPv4 или IPv6. Но для поддержки IPv6 адресов Zabbix агент должен быть скомпилирован с включённой поддержкой IPv6.
Примеры:
web.page.perf[www.example.com,index.php,80]
web.page.perf[https://www.example.com]
web.page.regexp[хост,<путь>,<порт>,регулярное выражение,<длина>,<вывод>]
Поиск строки на веб-странице.
Возвращаемое значение: Совпадающая строка, или указанная опциональным параметром вывод.
Смотрите Поддерживаемые платформы.
Параметры:
- хост — имя хоста или URL (в виде
схема://хост:порт/путь, где обязателен только хост). Допустимые схемы URL: http, https4. При отсутствии схемы будет обрабатываться как http. Если указан URL, тогда параметрыпутьипортдолжны быть пустыми. При подключении к серверам, которые требуют аутентификацию, возможность указать имя пользователя/пароль, например:http://user:[email protected], имеется только с поддержкой cURL 4. В именах хостов поддерживается punycode. - путь — путь к HTML документу (по умолчанию /);
- порт — номер порта (по умолчанию 80 для HTTP)
- регулярное выражение — регулярное выражение, описывающее требуемый шаблон;
- длина — максимальное количество возвращаемых символов;
- вывод — дополнительный шаблон форматирования вывода. Управляющая последовательность \0 заменяется найденной частью текста (начиная от первого символа совпадения, заканчивая символом, где совпадение заканчивается), тогда как управляющая последовательность \N (где N=1..9) заменяется N-ой совпадающей группой (или пустой строкой, если N превышает количество найденных групп).
Комментарии:
- Этот элемент данных становится неподдерживаемым, если заданный в
хостресурс не существует или недоступен; хостможет быть именем хоста, доменым именем, адресом IPv4 или IPv6. Но для поддержки IPv6 адресов Zabbix агент должен быть скомпилирован с включённой поддержкой IPv6.- Извлечение содержимого при использовании параметра
выводпроизводится на стороне агента.
Примеры:
web.page.regexp[www.example.com,index.php,80,OK,2]
web.page.regexp[https://www.example.com,,,OK,2]
agent.hostmetadata
Метаданные узла сети агента.
Возвращаемое значение: Строка.
Смотрите Поддерживаемые платформы.
Возвращает значение параметров HostMetadata или HostMetadataItem, или пустую строку, если ничего не задано.
agent.hostname
Имя узла сети агента.
Возвращаемое значение: Строка.
Смотрите Поддерживаемые платформы.
Возвращает:
- Пассивной проверкой — имя первого узла сети, указанного в параметре 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' server/proxy на целевом экземпляре.
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в файле конфигурации агента.