Параметры конфигурации: Zabbix агент (Windows)

Обзор

Параметры конфигурации позволяют настраивать поведение агента Zabbix в Windows.

Укажите значения параметров в файле конфигурации (zabbix_agentd.win.conf). Все параметры являются необязательными, если явно не указано, что параметр обязателен.

Эта страница имеет следующую структуру:

  • Обзор параметров (чтобы увидеть полные сведения о параметре, нажмите на его имя)
  • Сведения о параметрах
Parameter Description
Alias Задать псевдоним для ключа элемента данных.
AllowKey Разрешить выполнение тех ключей элементов данных, которые соответствуют шаблону.
BufferSend Задать частоту отправки значений из буфера на сервер/прокси Zabbix.
BufferSize Задать максимальное количество значений в буфере памяти.
DebugLevel Задать уровень отладки.
DenyKey Запретить выполнение тех ключей элементов данных, которые соответствуют шаблону.
EnableRemoteCommands Разрешить удаленные команды от сервера Zabbix.
HeartbeatFrequency Задать частоту сообщений heartbeat в секундах.
HostInterface Указать интерфейс узла сети.
HostInterfaceItem Указать элемент данных для получения интерфейса узла сети.
HostMetadata Указать метаданные узла сети.
HostMetadataItem Указать элемент данных агента Zabbix для получения метаданных узла сети.
Hostname Указать имя узла сети.
HostnameItem Указать элемент данных агента Zabbix для получения имени узла сети.
Include Указать каталог или отдельные файлы, которые нужно включить в файл конфигурации.
ListenBacklog Задать максимальное количество ожидающих подключений в очереди TCP.
ListenIP Указать IP-адрес прослушивания агента для подключений от сервера/прокси.
ListenPort Указать порт прослушивания агента.
LogFile Указать файл журнала агента.
LogFileSize Задать максимальный размер файла журнала.
LogRemoteCommands Включить запись выполненных команд оболочки как предупреждений.
LogType Указать тип вывода журнала.
MaxLinesPerSecond Задать максимальное количество новых строк в секунду для отправки на сервер/прокси Zabbix при обработке активных проверок log, logrt или eventlog.
PerfCounter Определить новый параметр <parameter_name>, который является средним значением системного счетчика производительности <perf_counter_path> за указанный период времени <period> (в секундах).
PerfCounterEn Определить новый параметр <parameter_name>, который является средним значением системного счетчика производительности <perf_counter_path> за указанный период времени <period> (в секундах). По сравнению с PerfCounter, пути perfcounter должны быть на английском языке.
RefreshActiveChecks Указать частоту обновления списка активных проверок.
Server Указать IP-адреса или DNS-имена серверов/прокси 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

Установите частоту отправки значений из буфера на сервер/прокси Zabbix (в секундах).

По умолчанию: 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-именами, также будут отклонены и помечены как недопустимые.

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

Имя узла сети

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

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

HostnameItem

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

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

Включение

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

Пример:

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

Установите максимальное число ожидающих соединений в очереди TCP.
Значение по умолчанию — жестко заданная константа, которая зависит от системы.
Максимально поддерживаемое значение также зависит от системы; слишком большие значения могут быть незаметно усечены до 'implementation-specified maximum'.

По умолчанию: 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

Включить журналирование выполненных команд оболочки как предупреждений.
Команды будут записываться в журнал только при удаленном выполнении.
Записи в журнале не будут создаваться, если 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. Список, разделенный запятыми.
Входящие соединения будут приниматься только от узлов сети, перечисленных здесь. Если поддержка 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

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

SourceIP

Укажите исходящий IP-адрес для:

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

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

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

Тайм-аут

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

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

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

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

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

TLSAccept

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

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

TLSCAFile

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

TLSCertFile

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

TLSConnect

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

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

TLSCRLFile

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

TLSKeyFile

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

TLSPSKFile

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

TLSPSKIdentity

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

TLSServerCertIssuer

Укажите разрешенного издателя сертификата сервера (прокси).

TLSServerCertSubject

Укажите допустимый subject сертификата сервера (прокси).

UnsafeUserParameters

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

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

UserParameter

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

Пример:

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

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

Пример:

UserParameterDir=C:\opt\myscripts