5 Zabbix агент (Windows)

Обзор

В этом разделе перечислены параметры, поддерживаемые файлом конфигурации Windows агента Zabbix (zabbix_agentd.conf).

Параметры перечислены без дополнительной информации. Нажмите на параметр, чтобы увидеть полные сведения.

Parameter Description
Alias Задает псевдоним для ключа элемента данных.
AllowKey Разрешает выполнение тех ключей элементов данных, которые соответствуют шаблону.
BufferSend Не хранить данные в буфере дольше N секунд.
BufferSize Максимальное количество значений в буфере памяти.
DebugLevel Уровень отладки.
DenyKey Запрещает выполнение тех ключей элементов данных, которые соответствуют шаблону.
EnableRemoteCommands Разрешены ли удаленные команды от сервера Zabbix.
HeartbeatFrequency Частота heartbeat-сообщений в секундах.
HostInterface Необязательный параметр, определяющий интерфейс узла сети.
HostInterfaceItem Необязательный параметр, определяющий элемент данных, используемый для получения интерфейса узла сети.
HostMetadata Необязательный параметр, определяющий метаданные узла сети.
HostMetadataItem Необязательный параметр, определяющий элемент данных агента Zabbix, используемый для получения метаданных узла сети.
Hostname Необязательный параметр, определяющий имя узла сети.
HostnameItem Необязательный параметр, определяющий элемент данных агента Zabbix, используемый для получения имени узла сети.
Include В файл конфигурации можно включать отдельные файлы или все файлы из каталога.
ListenBacklog Максимальное количество ожидающих соединений в очереди TCP.
ListenIP Список IP-адресов, разделенных запятыми, на которых агент должен прослушивать соединения.
ListenPort Агент будет прослушивать этот порт для соединений от сервера.
LogFile Имя файла журнала.
LogFileSize Максимальный размер файла журнала.
LogRemoteCommands Включить журналирование выполняемых shell-команд как предупреждений.
LogType Тип вывода журнала.
MaxLinesPerSecond Максимальное количество новых строк, которое агент будет отправлять в секунду на сервер Zabbix или прокси при обработке активных проверок 'log' и 'logrt'.
PerfCounter Определяет новый параметр <parameter_name>, который является средним значением системного счетчика производительности <perf_counter_path> за указанный период времени <period> (в секундах).
PerfCounterEn Определяет новый параметр <parameter_name>, который является средним значением системного счетчика производительности <perf_counter_path> за указанный период времени <period> (в секундах). По сравнению с PerfCounter, пути perfcounter должны быть на английском языке.
RefreshActiveChecks Как часто обновляется список активных проверок.
Server Список IP-адресов, разделенных запятыми, при необходимости в нотации CIDR, или DNS-имен серверов Zabbix и прокси Zabbix.
ServerActive Адрес сервера/прокси Zabbix или конфигурация кластера для получения активных проверок.
SourceIP Исходный IP-адрес.
StartAgents Количество предварительно созданных экземпляров zabbix_agentd, обрабатывающих пассивные проверки.
Timeout Указывает, как долго ждать (в секундах) установления соединения и обмена данными с прокси Zabbix или сервером.
TLSAccept Какие входящие соединения принимать.
TLSCAFile Полный путь к файлу, содержащему сертификаты корневых CA для проверки сертификата другой стороны, используемый для шифрованного взаимодействия между компонентами Zabbix.
TLSCertFile Полный путь к файлу, содержащему сертификат агента или цепочку сертификатов, используемый для шифрованного взаимодействия между компонентами Zabbix.
TLSConnect Как агент должен подключаться к серверу Zabbix или прокси.
TLSCRLFile Полный путь к файлу, содержащему отозванные сертификаты. Этот параметр используется для шифрованного взаимодействия между компонентами Zabbix.
TLSKeyFile Полный путь к файлу, содержащему закрытый ключ агента, используемый для шифрованного взаимодействия между компонентами Zabbix.
TLSPSKFile Полный путь к файлу, содержащему предварительно разделяемый ключ агента, используемый для шифрованного взаимодействия с сервером Zabbix.
TLSPSKIdentity Строка идентификатора предварительно разделяемого ключа, используемая для шифрованного взаимодействия с сервером Zabbix.
TLSServerCertIssuer Допустимый издатель сертификата сервера (прокси).
TLSServerCertSubject Допустимый субъект сертификата сервера (прокси).
UnsafeUserParameters Разрешить передачу любых символов в аргументах пользовательских параметров.
UserParameter Пользовательский параметр для мониторинга.
UserParameterDir Путь поиска по умолчанию для команд UserParameter.

Все параметры являются необязательными, если явно не указано, что параметр обязателен.

Обратите внимание:

  • Значения по умолчанию отражают значения демона по умолчанию, а не значения в поставляемых файлах конфигурации.
  • Значения поддерживают переменные окружения.
  • Zabbix поддерживает файлы конфигурации только в кодировке UTF-8 без BOM.
  • Комментарии, начинающиеся с "#", поддерживаются только в начале строки.

Подробности параметров

Псевдоним

Задает псевдоним для ключа элемента данных. Его можно использовать для замены длинного и сложного ключа элемента данных более коротким и простым.
Может присутствовать несколько параметров Alias. Несколько параметров с одинаковым ключом Alias не допускаются.
Разные ключи Alias могут ссылаться на один и тот же ключ элемента данных.
Псевдонимы можно использовать в HostMetadataItem, но не в параметрах HostnameItem или PerfCounter.

Пример 1: Получение использования файла подкачки в процентах с сервера.

Alias=pg_usage:perf_counter[\Paging File(_Total)\% Usage]

Теперь для получения данных можно использовать сокращенный ключ pg_usage.

Пример 2: Получение загрузки CPU с параметрами по умолчанию и пользовательскими параметрами.

Alias=cpu.load:system.cpu.load
Alias=cpu.load[*]:system.cpu.load[*]

Это позволяет использовать ключ cpu.load для получения загрузки CPU с параметрами по умолчанию, а также cpu.load[percpu,avg15] для получения конкретных данных о загрузке CPU.

Пример 3: Запуск нескольких правил обнаружения низкого уровня, обрабатывающих одни и те же элементы данных обнаружения.

Alias=vfs.fs.discovery[*]:vfs.fs.discovery

Теперь можно настроить несколько правил обнаружения, использующих vfs.fs.discovery с разными параметрами для каждого правила, например vfs.fs.discovery[foo], vfs.fs.discovery[bar] и т. д.

AllowKey

Разрешить выполнение тех ключей элементов данных, которые соответствуют шаблону. Шаблон ключа представляет собой выражение с подстановочными знаками, которое поддерживает символ "*" для сопоставления с любым количеством любых символов.
Можно определить несколько правил сопоставления ключей в сочетании с DenyKey. Параметры обрабатываются по одному в порядке их появления. См. также: Ограничение проверок агента.

BufferSend

Не хранить данные в буфере дольше N секунд.

По умолчанию: 5
Диапазон: 1-3600

BufferSize

Максимальное количество значений в буфере памяти. Агент отправит все собранные данные на сервер Zabbix или прокси, если буфер заполнен.

По умолчанию: 100
Диапазон: 2-65535

DebugLevel

Укажите уровень отладки:
0 — основная информация о запуске и остановке процессов Zabbix
1 — критическая информация;
2 — информация об ошибках;
3 — предупреждения;
4 — для отладки (выводит много информации);
5 — расширенная отладка (выводит ещё больше информации).

По умолчанию: 3
Диапазон: 0-5

DenyKey

Запрещает выполнение тех ключей элементов данных, которые соответствуют шаблону. Шаблон ключа представляет собой выражение с подстановочными знаками, поддерживающее символ "*" для сопоставления с любым количеством любых символов.
Можно определить несколько правил сопоставления ключей в сочетании с AllowKey. Параметры обрабатываются по одному в порядке их появления. См. также: Ограничение проверок агента.

EnableRemoteCommands

Разрешены ли удалённые команды от сервера Zabbix. Этот параметр устарел; вместо него используйте AllowKey=system.run[*] или DenyKey=system.run[*].
Это внутренний псевдоним для параметров AllowKey/DenyKey в зависимости от значения:
0 - DenyKey=system.run[*]
1 - AllowKey=system.run[*]

По умолчанию: 0
Значения: 0 — не разрешать, 1 — разрешать

HeartbeatFrequency

Частота сообщений heartbeat в секундах. Используется для мониторинга доступности активных проверок.
0 — сообщения heartbeat отключены.

По умолчанию: 60
Диапазон: 0-3600

HostInterface

Необязательный параметр, который определяет интерфейс узла сети (IP-адрес или DNS-имя), используемый в процессе авторегистрации. Это значение будет использовано для заполнения интерфейса во вновь созданном узле сети и позволяет явно настроить либо IP-адрес, либо DNS-адрес. Подробнее см. в разделе Использование DNS в качестве интерфейса по умолчанию.

Если не определено, значение будет получено из HostInterfaceItem.

Агент выдаст ошибку и не запустится, если значение превышает ограничение в 255 символов.

Диапазон: 0-255 символов

HostInterfaceItem

Необязательный параметр, который определяет элемент данных, используемый для определения интерфейса узла сети (IP-адреса или DNS-имени) в процессе авторегистрации узла сети. Это значение используется только в том случае, если HostInterface не определён. Подробнее см. в разделе Использование DNS в качестве интерфейса по умолчанию.

Во время запроса авторегистрации агент запишет предупреждающее сообщение, если значение, возвращаемое указанным элементом данных, превышает ограничение в 255 символов.

Элемент данных system.run[] поддерживается независимо от настроек AllowKey/DenyKey.

HostMetadata

Необязательный параметр, который определяет метаданные, используемые для идентификации или различения узла сети в процессе авторегистрации узла сети (активный агент). HostMetadata позволяет различать узлы сети не только по имени узла сети.

Если параметр не задан, значение будет получено из HostMetadataItem.

Агент выдаст ошибку и не запустится, если указанное значение превышает ограничение в 2034 байта или является строкой не в кодировке UTF-8. Если параметр ожидает IP-адрес или DNS-имя, значения, которые являются корректными UTF-8, но не являются корректными IP-адресами или DNS-именами, также будут отклонены и помечены как недопустимые.

Многострочные метаданные не поддерживаются — вывод будет обрезан на первом разрыве строки.

Диапазон: 0-2034 байт

HostMetadataItem

Необязательный параметр, который определяет элемент данных агента Zabbix, используемый для получения метаданных узла сети. Этот параметр используется только в том случае, если HostMetadata не задан.

Значение HostMetadataItem извлекается при каждой попытке авторегистрации и используется только в процессе авторегистрации узла сети (активный агент). HostMetadataItem позволяет различать узлы сети не только по имени узла сети.

Поддерживаются пользовательские параметры, счётчики производительности и псевдонимы. Элемент данных system.run[] поддерживается независимо от настроек AllowKey/DenyKey.

Во время запроса авторегистрации агент будет записывать предупреждающее сообщение в журнал, если значение, возвращаемое указанным элементом данных, превышает ограничение в 65535 кодовых точек UTF-8. Значение, возвращаемое элементом данных, должно быть строкой UTF-8, в противном случае оно будет проигнорировано. Если параметр ожидает IP-адрес или DNS-имя, значения, которые являются допустимыми UTF-8, но не являются допустимыми IP-адресами или DNS-именами, также будут отклонены и отмечены как недопустимые.

Многострочные метаданные не поддерживаются — вывод будет обрезан на первом разрыве строки.

Hostname

Список уникальных, чувствительных к регистру имен узлов сети, разделенных запятыми. Обязательно для активных проверок и должно совпадать с именами узлов сети, настроенными на сервере. Если значение не задано, оно получается из HostnameItem.
Допустимые символы: буквы и цифры, '.', ' ', '_' и '-'. Максимальная длина: 128 символов для каждого имени узла сети, 2048 символов для всей строки.

По умолчанию: задается параметром HostnameItem

HostnameItem

Необязательный параметр, который определяет элемент данных агента Zabbix, используемый для получения имени узла сети. Этот параметр используется только в том случае, если не определён Hostname. Пользовательские параметры, счётчики производительности или псевдонимы не поддерживаются, однако элемент данных system.run[] поддерживается независимо от значений AllowKey/DenyKey.
См. также более подробное описание.

По умолчанию: system.hostname

Include

Вы можете включать отдельные файлы или все файлы в каталоге в файл конфигурации (по умолчанию он расположен в C:\Program Files\Zabbix Agent, если Zabbix агент установлен с использованием пакетов установщика Windows MSI; расположен в папке, указанной во время установки, если Zabbix агент установлен как zip-архив). Все включаемые файлы должны иметь корректный синтаксис, в противном случае агент не запустится.
Чтобы включать только нужные файлы из указанного каталога, для сопоставления с шаблоном поддерживается символ подстановки звёздочка.
См. специальные примечания об ограничениях.

Пример:

Include=C:\Program Files\Zabbix Agent\zabbix_agentd.d\*.conf
ListenBacklog

Максимальное количество ожидающих соединений в очереди TCP.
Значение по умолчанию — это жестко заданная константа, которая зависит от системы.
Максимально поддерживаемое значение также зависит от системы; слишком большие значения могут быть молча усечены до «максимума, определяемого реализацией».

По умолчанию: SOMAXCONN
Диапазон: 0 - INT_MAX

ListenIP

Список IP-адресов, разделённых запятыми, на которых агент должен прослушивать соединения.

По умолчанию: 0.0.0.0

ListenPort

Агент будет прослушивать этот порт для соединений от сервера.

По умолчанию: 10050
Диапазон: 1024-32767

LogFile

Имя файла журнала агента.

По умолчанию: c:\zabbix_agentd.log
Обязательно: Да, если LogType установлено в file; в противном случае — нет

LogFileSize

Максимальный размер файла журнала в МБ.
0 — отключить автоматическую ротацию журнала.
Примечание: Если достигнут предельный размер файла журнала и ротация файла по какой-либо причине не удалась, существующий файл журнала усекается и начинается заново.

По умолчанию: 1
Диапазон: 0-1024

LogRemoteCommands

Включает журналирование выполняемых shell-команд как предупреждений. Команды будут записываться в журнал, только если они выполняются удалённо. Записи журнала не будут создаваться, если system.run[] запускается локально параметрами HostMetadataItem, HostInterfaceItem или HostnameItem.

По умолчанию: 0
Значения: 0 — отключено, 1 — включено

LogType

Тип вывода журнала:
file — записывать журнал в файл, указанный параметром LogFile;
system — записывать журнал в журнал событий Windows;
console — записывать журнал в стандартный вывод.

По умолчанию: file

MaxLinesPerSecond

Максимальное количество новых строк, которое агент будет отправлять в секунду на сервер Zabbix или прокси при обработке активных проверок 'log', 'logrt' и 'eventlog'. Указанное значение будет переопределено параметром 'maxlines', заданным в ключе элемента данных 'log', 'logrt' или 'eventlog'.
Примечание: Zabbix будет обрабатывать в 10 раз больше новых строк, чем указано в MaxLinesPerSecond, чтобы найти требуемую строку в элементах данных журнала.

По умолчанию: 20
Диапазон: 1-1000

PerfCounter

Определяет новый параметр <parameter_name>, который является средним значением системного счётчика производительности <perf_counter_path> за указанный период времени <period> (в секундах).
Синтаксис: <parameter_name>,"<perf_counter_path>",<period>

Например, если вы хотите получать среднее количество прерываний процессора в секунду за последнюю минуту, вы можете определить новый параметр "interrupts" следующим образом:

PerfCounter = interrupts,"\Processor(0)\Interrupts/sec",60

Обратите внимание на двойные кавычки вокруг пути к счётчику производительности. Имя параметра (interrupts) следует использовать как ключ элемента данных при создании элемента данных. Выборки для вычисления среднего значения будут выполняться каждую секунду.
Вы можете выполнить команду "typeperf -qx", чтобы получить список всех счётчиков производительности, доступных в Windows.

PerfCounterEn

Определяет новый параметр <parameter_name>, который является средним значением системного счётчика производительности <perf_counter_path> за указанный период времени <period> (в секундах). По сравнению с PerfCounter, пути счётчиков производительности в perfcounter должны быть на английском языке. Поддерживается только в Windows Server 2008/Vista и более поздних версиях.
Синтаксис: <parameter_name>,"<perf_counter_path>",<period>

Например, если вы хотите получать среднее количество прерываний процессора в секунду за последнюю минуту, вы можете определить новый параметр "interrupts" следующим образом:

PerfCounterEn = interrupts,"\Processor(0)\Interrupts/sec",60

Обратите внимание на двойные кавычки вокруг пути счётчика производительности. Имя параметра (interrupts) следует использовать как ключ элемента данных при создании элемента данных. Образцы для вычисления среднего значения будут сниматься каждую секунду.
Список английских строк можно найти, просмотрев следующий раздел реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009.

RefreshActiveChecks

Как часто обновляется список активных проверок, в секундах. Обратите внимание, что после неудачной попытки обновить активные проверки следующая попытка обновления будет выполнена через 60 секунд.

По умолчанию: 5
Диапазон: 1-86400

Сервер

Список IP-адресов, разделённых запятыми, при необходимости в нотации CIDR, или DNS-имён серверов Zabbix или прокси Zabbix. Входящие соединения будут приниматься только от узлов сети, перечисленных здесь. Если поддержка IPv6 включена, то '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' считаются эквивалентными, а '::/0' разрешит любой IPv4- или IPv6-адрес. '0.0.0.0/0' можно использовать, чтобы разрешить любой IPv4-адрес. Обратите внимание, что "IPv4-compatible IPv6 addresses" (префикс 0000::/96) поддерживаются, но объявлены устаревшими в RFC4291. Пробелы допускаются.

Пример:

Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com

Обязательный: да, если StartAgents явно не установлен в 0

ServerActive

Адрес сервера/прокси Zabbix или конфигурация кластера, откуда получать активные проверки. Адрес сервера/прокси — это IP-адрес или DNS-имя и необязательный порт, разделённые двоеточием.
Конфигурация кластера представляет собой один или несколько адресов участников группы сервера или прокси, разделённых точкой с запятой. Можно указать несколько серверов/кластеров Zabbix и прокси Zabbix, разделив их запятыми. Если не используются группы прокси, не следует указывать более одного прокси Zabbix для каждого сервера/кластера Zabbix. Если указан прокси Zabbix, то сервер/кластер Zabbix для этого прокси указывать не следует.
Для параллельного использования нескольких независимых серверов Zabbix можно указать несколько адресов, разделённых запятыми. Пробелы допускаются.
Если порт не указан, используется порт по умолчанию.
Адреса IPv6 должны быть заключены в квадратные скобки, если для этого узла сети указан порт. Если порт не указан, квадратные скобки для адресов IPv6 необязательны.
Если этот параметр не указан, активные проверки отключены.

Пример для прокси Zabbix:

ServerActive=127.0.0.1:10051

Пример для группы прокси Zabbix:

ServerActive=proxy1.example.com;proxy2.example.com;proxy3.example.com;proxy4.example.com;proxy5.example.com

Пример для нескольких серверов:

ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]

Пример для высокой доступности:

ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051;zabbix.cluster.node3

Пример для высокой доступности с двумя кластерами и одним сервером:

ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051,zabbix.cluster2.node1;zabbix.cluster2.node2,zabbix.domain

Диапазон: (*)

SourceIP

IP-адрес источника для:

  • исходящих соединений с сервером Zabbix или прокси Zabbix;
  • установления соединений при выполнении некоторых элементов данных (web.page.get, net.tcp.port и т. д.).
StartAgents

Количество предварительно созданных экземпляров zabbix_agentd, которые обрабатывают пассивные проверки. Если установлено значение 0, пассивные проверки отключаются, и агент не будет прослушивать ни один TCP-порт.

По умолчанию: 10
Диапазон: 0-100 (*)

Timeout

Указывает, как долго ждать (в секундах) установления соединения и обмена данными с Zabbix прокси или сервером.

Этот параметр определяет длительность различных операций обмена данными, включая:

  • ожидание ответа от Zabbix сервера;
  • отправку запросов на Zabbix сервер, включая запросы конфигурации элементов данных и данные элементов данных в active checks;
  • получение данных журналов при мониторинге logfile или журнала событий Windows;
  • отправку heartbeat-сообщений;
  • максимальную длительность проверок vfs.*;
  • использование модулями Zabbix агента;
  • использование в качестве резервного значения в сценариях, когда сервер или прокси старше версии 7.0 отправляет проверки без тайм-аутов.

Этот тайм-аут не будет использоваться для тех проверок агента, для которых в веб-интерфейсе можно настроить параметры тайм-аута (на глобальном уровне, на уровне прокси или отдельного элемента данных).

По умолчанию: 3
Диапазон: 1-30

TLSAccept

Входящие соединения, которые следует принимать. Используется для пассивных проверок. Можно указать несколько значений, разделённых запятой:
unencrypted — принимать соединения без шифрования (по умолчанию)
psk — принимать соединения с TLS и предварительно разделённым ключом (PSK)
cert — принимать соединения с TLS и сертификатом

Обязательно: да, если определены параметры TLS-сертификата или PSK (даже для unencrypted соединения); в противном случае — нет

TLSCAFile

Полный путь к файлу, содержащему сертификаты корневых центров сертификации (CA) для проверки сертификата другой стороны, используемый для шифрованного обмена данными между компонентами Zabbix.

TLSCertFile

Полный путь к файлу, содержащему сертификат агента или цепочку сертификатов, используемому для шифрованного обмена данными с компонентами Zabbix.

TLSConnect

Как агент должен подключаться к серверу Zabbix или прокси. Используется для активных проверок. Можно указать только одно значение:
unencrypted — подключение без шифрования (по умолчанию)
psk — подключение с использованием TLS и предварительно общего ключа (PSK)
cert — подключение с использованием TLS и сертификата

Обязательно: да, если определены параметры TLS-сертификата или PSK (даже для подключения unencrypted); в противном случае — нет

TLSCRLFile

Полный путь к файлу, содержащему отозванные сертификаты. Этот параметр используется для шифрованного обмена данными между компонентами Zabbix.

TLSKeyFile

Полный путь к файлу, содержащему закрытый ключ агента, используемый для шифрованного обмена данными между компонентами Zabbix.

TLSPSKFile

Полный путь к файлу, содержащему предварительно разделяемый ключ агента, используемый для зашифрованного обмена данными с сервером Zabbix.

TLSPSKIdentity

Строка идентификатора предварительно общего ключа, используемая для шифрованного обмена данными с сервером Zabbix.

TLSServerCertIssuer

Разрешённый издатель сертификата сервера (прокси).

TLSServerCertSubject

Разрешённый субъект сертификата сервера (прокси).

UnsafeUserParameters

Разрешить передачу всех символов в аргументах пользовательских параметров. Следующие символы не допускаются: \ ' " ` * ? [ ] { } \~ $ ! & ; ( ) < > | # @ %
Кроме того, не допускаются символы новой строки.

По умолчанию: 0
Значения: 0 — не разрешать, 1 — разрешать

UserParameter

Определяемый пользователем параметр для мониторинга. Таких параметров, определяемых пользователем, может быть несколько.
Формат: UserParameter=<key>,<shell command>
Обратите внимание, что shell-команда не должна возвращать пустую строку или только символ конца строки. Shell-команды могут использовать относительные пути, если указан параметр UserParameterDir.

Пример:

UserParameter=system.test,dir /b | find /c /v ""
UserParameter=check_cpu,.\custom\_script.bat
UserParameterDir

Путь поиска по умолчанию для команд UserParameter. Если используется, агент изменит свой рабочий каталог на указанный здесь перед выполнением команды. Таким образом, команды UserParameter могут использовать относительный префикс ./ вместо полного пути. Допускается только одна запись.

Пример:

UserParameterDir=C:\opt\myscripts

(*) Количество активных серверов, перечисленных в ServerActive, плюс количество заранее созданных экземпляров для пассивных проверок, указанных в StartAgents, должно быть меньше 64.