4 Zabbix Agent (Windows)

Os valores padrão aqui descrito refletem os padrões dos binários, não dos arquivos de configuração fornecidos.

Os parâmetros suportados por um arquivo de configuração do Zabbix Agent no Windows:

Parâmetro Obrigatório Range Padrão Descrição
Alias não Defina um apelido para a chave do item. Pode ser utilizado para substituir chaves longas e complexas por uma menor.
Múltiplos parâmetros Alias poderão estar presentes. Múltiplos parâmetros Alias com a mesma chave não são permitidos.
Chaves diferentes de Alias poderão referenciar a mesma chave de item.
Por exemplo, para recuperar a utilização de arquivo de paginação em percentual de um servidor:
Alias=pg_usage:perf_counter[\Paging File(_Total)\% Usage]
pode ser encurtado para pg_usage.
Apelidos podem ser utilizados para o HostMetadataItem mas não para o parâmetro HostnameItem ou PerfCounter.
BufferSend não 1-3600 5 Não guardar dados mais antigos que N segundos no buffer.
BufferSize não 2-65535 100 Quantidade máxima de valores armazenados no buffer. O agente irá enviar todos os valores para o Zabbix Server/Proxy caso o buffer encha.
DebugLevel não 0-5 3 Define o nível de depuração:
0 - informações básicas sobre iniciação/parada de processos Zabbix
1 - informações críticas
2 - informações de erro
3 - avisos
4 - depuração (produz muita informação)
5 - depuração estendida (produz MUITO MAIS informação)
EnableRemoteCommands não 0 Permite a execução de comandos remotos enviados pelo Zabbix Server.
0 - não permitido
1 - permitido
HostMetadata não 0-255 characters Parâmetro opcional que define os metadados do host. Os metadados são utilizados apenas pelo processo de autorregistro (agente ativo).
Se não for definido, o valor será obtido pelo parâmetro HostMetadataItem.
O uso de caracteres não UTF-8 ou maior que o permitido impedirá a carga do agente.
Suportado desde o Zabbix 2.2.0.
HostMetadataItem não Define o item utilizado para a definição do metadado do Zabbix agent. Esta opção só é utilizada se o parâmetro HostMetadata não for definido.
Suporta parâmetros de usuário, contadores de performance e apelidos. Suporta system.run[] em substituição de EnableRemoteCommands.
Os metadados são utilizados apenas pelo processo de autorregistro (agente ativo).
Durante o processo de autorregistro o agente irá registrar uma mensagem de aviso se o valor retornado for maior que 255 characteres.
O valor retornado pelo item deverá estar codificado em UTF-8 ou será ignorado.
Suportado desde o Zabbix 2.2.0.
Hostname não Definido pelo parâmetro HostnameItem Único e sensível ao caso.
Obrigatório para verificações ativas e precisa ser exatamente igual ao 'hostname' configurado na interface web do Zabbix.
Caracteres permitidos: alfanuméricos, '.', ' ', '_' e '-'.
Tamanho máximo: 64
HostnameItem não system.hostname Parâmetro opcional que define qual item será utilizado para retornar o 'hostname'. Esta opção só é utilizada se o parâmetro Hostname não for definido.
Não suporta parâmetros de usuário, contadores de performance e apelidos, mas suporta system.run[] em substituição do EnableRemoteCommands.
Suportado desde o Zabbix 1.8.6.
Consulte o manual de configuração do agente windows para maiores detalhes.
Include não Você pode incluir arquivos individuais de configuração ou todos os arquivos de determinado diretório.
Para incluir somente os arquivos relevantes de determinado diretório, poderá ser utilizados padrões de nomes. Por exemplo: /absolute/path/to/config/files/*.conf. O suporte a padrões de nomes é suportado desde o Zabbix 2.4.0.
Consulte mais em notas especiais sobre limites.
ListenIP não 0.0.0.0 Sobe o agente em uma interface específica. Múltiplos IPs podem ser informados, e devem ser separados por ponto e vírgula. Suportado desde o Zabbix 1.8.3.
ListenPort não 1024-32767 10050 O agente irá receber conexões do servidor a partir desta porta.
LogFile não Nome do arquivo de log.
LogType não arquivo Tipo de saída de log:
file - grava o log no arquivo definido pelo parâmetro LogFile,
system - grava no log de eventos do Windows,
console - apresenta os dados na saida normal.
Suportado desde o Zabbix 3.0.0.
LogFileSize não 0-1024 1 Tamanho máximo do arquivo de log (em MB).
0 - desabilita a rotação automática de log.
Nota: se o tamanho limite do log for alcançado e a rotação falhar, por qualquer motivo, o log atual será zerado e um novo será iniciado.
LogRemoteCommands não 0 Ativa o log de comandos executados.
0 - inativo
1 - ativo
MaxLinesPerSecond não 1-1000 20 Quantidade máxima de linhas por segundo que o agente irá enviar ao servidor para itens de 'log', 'logrt' e 'eventlog' em modo de verificação ativa.
O valor informado será sobrescrito pelo parâmetro 'maxlines',
quando informado nas chaves de item: 'log', 'logrt' ou 'eventlog' .
PerfCounter não Sintaxe: <parameter_name>,"<perf_counter_path>",<period>
Define um novo parâmetro <parameter_name> com a média de valor de determinado contador de performance <perf_counter_path> em um tempo específico de tempo (in seconds).
Por exemplo, se você quer receber a média de interrupções de processador por segundo no último minuto, você pode definir um novo parâmetro "interrupts":
PerfCounter = interrupts,"\Processor(0)\Interrupts/sec",60
Observe o uso de aspas duplas ao redor do caminho do contador de performance.
O nome do parâmetro (interrupts) será utilizado como chave do item durante sua criação.
As amostras utilizadas para o cálculo da média serão coletadas uma vez por segundo.
Você pode executar "typeperf -qx" para obter uma lista com todos os contadores de performance disponíveis no Windows.
RefreshActiveChecks não 60-3600 120 Intervalo entre atualizações da lista de verificações ativas, em segundos.
Observe que após uma falha na obtenção da lista, nova tentativa será feita em 60 segundos.
Server sim Lista separada por vírgulas de contendo os endereços IP (ou nomes de DNS) dos Zabbix Server/Proxy permitidos. Conexões a partir de outros IPs serão rejeitadas. Espaços são permitidos desde o Zabbix 2.2.
Observe que os nomes 'hostnames' precisam ser resolvidos como hostname→endereço IP e como endereço IP→hostname.
If se o suporte a IPv6 estiver ativo, os endereços '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' serão tratados de igual forma.
ServerActive não (*) Conjunto IP:porta ou hostname:porta dos Zabbix Server/Proxy usados para verificações ativas.
São permitidos diversos endereços separados por vírgula e os servidores serão tratados de forma independente, em paralelo. Não são permitidos espaços.
Se a porta não for definida, será utilizada a padrão (10051).
Endereços IPv6 com porta definida precisam estar entre aspas, se não for definida a porta o uso de aspas é opcional.
Se este parâmetro não for definido as verificações ativas serão desativadas.
SourceIP não IP a ser utilizado nas conexões de saída.
StartAgents não 0-63 (*) 3 Quantidade de instâncias pré-alocadas do zabbix_agentd para as verificações passivas.
Se definido como '0', irá desativar as verificações passivas e o agente não irá escutar nenhuma porta TCP.
Timeout não 1-30 3 Tempo limite ao buscar determinado valor (1-255). O agente não irá abortar a execução de parâmetros de usuário ao alcançar o tempo limite!
TLSAccept sim, se o certificado TLS ou os parâmetros PSK estiverem definidos (mesmo para conexão não criptografada), outras situações: não Quais conexões de entrada serão aceitas. Utilizada em verificações passivas. Múltiplos valores podem ser definidos, separados por vírgulas:
unencrypted - aceita conexões sem criptografia (padrão)
psk - aceita conexões com o uso de TLS e pre-shared key (PSK)
cert - aceita conexões com TLS e certificado. Suportado desde o Zabbix 3.0.0.
TLSCAFile não Caminho completo do arquivo contendo os certificados raiz (CA) para verificação dos certificados entre as partes, utilizado para comunicações criptografadas entre os componentes do Zabbix. Suportado desde o Zabbix 3.0.0.
TLSCertFile não Caminho completo para o arquivo contendo o certificado de agente ou a cadeia de certificados, utilizada para comunicações criptografadas entre os componentes do Zabbix. Suportado desde o Zabbix 3.0.0.
TLSConnect sim, se o certificado TLS ou os parâmetros PSK estiverem definidos (mesmo para conexão não criptografada), outras situações: não Como o agente irá se conectar ao Zabbix Server/Proxy. Utilizado para verificações ativas. Apenas um destes pode ser definido:
unencrypted - conectar sem criptografia (padrão)
psk - conectar com o uso de TLS e pre-shared key (PSK)
cert - conectar com TLS e certificado. Suportado desde o Zabbix 3.0.0.
TLSCRLFile não Caminho completo para o arquivo contendo os certificados revogados, utilizado para comunicações criptografadas entre os componentes do Zabbix. Suportado desde o Zabbix 3.0.0.
TLSKeyFile não Caminho completo para o arquivo contendo a chave privada do agente, utilizado para comunicações criptografadas entre os componentes do Zabbix. Suportado desde o Zabbix 3.0.0.
TLSPSKFile não Caminho completo para o arquivo contendo a PSK do agente, utilizado para comunicações criptografadas entre os componentes do Zabbix. Suportado desde o Zabbix 3.0.0.
TLSPSKIdentity não Identidade PSK, utilizado para comunicações criptografadas entre os componentes do Zabbix.
TLSServerCertIssuer não Emissor de certificado autorizado do server (proxy)
TLSServerCertSubject não Destino do certificado permitido pelo server (proxy)
UnsafeUserParameters não 0-1 0 Permite que qualquer caractere seja passado como argumentos em parâmetros definidos pelo usuário.
Os caracteres a seguir não são permitidos:
\ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
Caracteres de nova linha também não são permitidos.
UserParameter Parâmetro de monitoração definido pelo usuário. Múltiplos parâmetros UserParameter poderão estar presentes.
Formato: UserParameter=<key>,<shell command>
Observe que o comando do shell precisa retornar algo diferente de texto em branco ou EOL.
Exemplo: UserParameter=system.test,echo 1

(*) A quantidade de servidores ativos no parâmetro ServerActive somados à quantidade de instâncias pré-alocadas para verificações passivas, definidas pelo parâmetro StartAgents deverá ser inferior a 64.

Na versão 2.0.0 do agente os parâmetros de configuração relacionados a verificações ativas e passivas foram modificados.
Consulte a página listada na seção "Veja também" ao final deste manual para maiores detalhes sobre estas modificações.

O Zabbix suporta arquivos de configuração no formato UTF-8 sem o BOM.

Comentários são iniciados com "#" e só são suportados no início das linhas.

See also

  1. Diferenças entre o arquivo de configuração do agente a partir da versão 2.0.0.

Parameters

Parameter Mandatory Range Default Description
Alias no Sets an alias for an item key. It can be used to substitute long and complex item key with a smaller and simpler one.
Multiple Alias parameters may be present. Multiple parameters with the same Alias key are allowed.
Different Alias keys may reference the same item key.
Aliases can be used in HostMetadataItem but not in HostnameItem or PerfCounter parameters.

Examples:

1. Retrieving paging file usage in percents from the server.
Alias=pg_usage:perf_counter[\Paging File(_Total)\% Usage]
Now shorthand key pg_usage may be used to retrieve data.

2. Getting CPU load with default and custom parameters.
Alias=cpu.load:system.cpu.load
Alias=cpu.load[*]:system.cpu.load[*]
This allows use cpu.load key to get CPU utilization percentage with default parameters as well as use cpu.load[percpu,avg15] to get specific data about CPU load.

3. Running multiple low-level discovery rules processing the same discovery items.
Alias=vfs.fs.discovery[*]:vfs.fs.discovery
Now it is possible to set up several discovery rules using vfs.fs.discovery with different parameters for each rule, e.g., vfs.fs.discovery[foo], vfs.fs.discovery[bar], etc.
AllowKey no Allow execution of those item keys that match a pattern. Key pattern is a wildcard expression that supports "*" character to match any number of any characters.
Multiple key matching rules may be defined in combination with DenyKey. The parameters are processed one by one according to their appearance order.
This parameter is supported since Zabbix 5.0.0.
See also: Restricting agent checks.
BufferSend no 1-3600 5 Do not keep data longer than N seconds in buffer.
BufferSize no 2-65535 100 Maximum number of values in a memory buffer. The agent will send
all collected data to Zabbix server or proxy if the buffer is full.
DebugLevel no 0-5 3 Specifies debug level:
0 - basic information about starting and stopping of Zabbix processes
1 - critical information
2 - error information
3 - warnings
4 - for debugging (produces lots of information)
5 - extended debugging (produces even more information)
DenyKey no Deny execution of those item keys that match a pattern. Key pattern is a wildcard expression that supports "*" character to match any number of any characters.
Multiple key matching rules may be defined in combination with AllowKey. The parameters are processed one by one according to their appearance order.
This parameter is supported since Zabbix 5.0.0.
See also: Restricting agent checks.
EnableRemoteCommands no 0 Whether remote commands from Zabbix server are allowed. This parameter is deprecated, use AllowKey=system.run[*] or DenyKey=system.run[*] instead
It is internal alias for AllowKey/DenyKey parameters depending on value: 0 - DenyKey=system.run[*]
1 - AllowKey=system.run[*].
HostInterface no 0-255 characters Optional parameter that defines host interface.
Host interface is used at host autoregistration process.
An agent will issue an error and not start if the value is over the limit of 255 characters.
If not defined, value will be acquired from HostInterfaceItem.
Supported since Zabbix 4.4.0.
HostInterfaceItem no Optional parameter that defines an item used for getting host interface.
Host interface is used at host autoregistration process.
During an autoregistration request an agent will log a warning message if the value returned by specified item is over limit of 255 characters.
This option is only used when HostInterface is not defined.
Supported since Zabbix 4.4.0.
HostMetadata no 0-255 characters Optional parameter that defines host metadata. Host metadata is used only at host autoregistration process (active agent).
If not defined, the value will be acquired from HostMetadataItem.
An agent will issue an error and not start if the specified value is over the limit or a non-UTF-8 string.
HostMetadataItem no Optional parameter that defines a Zabbix agent item used for getting host metadata. This option is only used when HostMetadata is not defined.
Supports UserParameters, performance counters and aliases. Supports system.run[] regardless of EnableRemoteCommands value.
HostMetadataItem value is retrieved on each autoregistration attempt and is used only at host autoregistration process (active agent).
During an autoregistration request an agent will log a warning message if the value returned by the specified item is over the limit of 255 characters.
The value returned by the item must be a UTF-8 string otherwise it will be ignored.
Hostname no Set by HostnameItem List of comma-delimited unique, case-sensitive hostnames.
Required for active checks and must match hostnames as configured on the server. Value is acquired from HostnameItem if undefined.
Allowed characters: alphanumeric, '.', ' ', '_' and '-'.
Maximum length: 128 characters per hostname, 2048 characters for the entire line.
HostnameItem no system.hostname Optional parameter that defines a Zabbix agent item used for getting host name. This option is only used when Hostname is not defined.
Does not support UserParameters, performance counters or aliases, but does support system.run[] regardless of EnableRemoteCommands value.
The output length is limited to 512KB.
See also a more detailed description.
Include no You may include individual files or all files in a directory in the configuration file.
To only include relevant files in the specified directory, the asterisk wildcard character is supported for pattern matching. For example: /absolute/path/to/config/files/*.conf.
See special notes about limitations.
ListenBacklog no 0 - INT_MAX SOMAXCONN The maximum number of pending connections in the TCP queue.
Default value is a hard-coded constant, which depends on the system.
Maximum supported value depends on the system, too high values may be silently truncated to the 'implementation-specified maximum'.
ListenIP no 0.0.0.0 List of comma-delimited IP addresses that the agent should listen on.
ListenPort no 1024-32767 10050 Agent will listen on this port for connections from the server.
LogFile yes, if LogType is set to file, otherwise
no
C:\zabbix_agentd.log Name of the agent log file.
LogFileSize no 0-1024 1 Maximum size of log file in MB.
0 - disable automatic log rotation.
Note: If the log file size limit is reached and file rotation fails, for whatever reason, the existing log file is truncated and started anew.
LogType no file Log output type:
file - write log to file specified by LogFile parameter,
system - write log Windows Event Log,
console - write log to standard output.
This parameter is supported since Zabbix 3.0.0.
LogRemoteCommands no 0 Enable logging of executed shell commands as warnings.
0 - disabled
1 - enabled
MaxLinesPerSecond no 1-1000 20 Maximum number of new lines the agent will send per second to Zabbix server
or proxy processing 'log', 'logrt' and 'eventlog' active checks.
The provided value will be overridden by the parameter 'maxlines',
provided in 'log', 'logrt' or 'eventlog' item keys.
Note: Zabbix will process 10 times more new lines than set in MaxLinesPerSecond to seek the required string in log items.
PerfCounter no Defines a new parameter <parameter_name> which is an average value for system performance counter <perf_counter_path> for the specified time period <period> (in seconds).
Syntax: <parameter_name>,"<perf_counter_path>",<period>
For example, if you wish to receive average number of processor interrupts per second for last minute, you can define a new parameter "interrupts" as the following:
PerfCounter = interrupts,"\Processor(0)\Interrupts/sec",60
Please note double quotes around performance counter path.
The parameter name (interrupts) is to be used as the item key when creating an item.
Samples for calculating average value will be taken every second.
You may run "typeperf -qx" to get list of all performance counters available in Windows.
PerfCounterEn no Defines a new parameter <parameter_name> which is an average value for system performance counter <perf_counter_path> for the specified time period <period> (in seconds).
Syntax: <parameter_name>,"<perf_counter_path>",<period>
Compared to PerfCounter, perfcounter paths must be in English.
Supported only on Windows Server 2008/Vista and above.
For example, if you wish to receive average number of processor interrupts per second for last minute, you can define a new parameter "interrupts" as the following:
PerfCounterEn = interrupts,"\Processor(0)\Interrupts/sec",60
Please note double quotes around performance counter path.
The parameter name (interrupts) is to be used as the item key when creating an item.
Samples for calculating average value will be taken every second.
You can find the list of English strings by viewing the following registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009.
This parameter is supported since Zabbix 4.0.13 and 4.2.7.
RefreshActiveChecks no 60-3600 120 How often list of active checks is refreshed, in seconds.
Note that after failing to refresh active checks the next refresh will be attempted after 60 seconds.
Server yes, if StartAgents is not explicitly set to 0 List of comma delimited IP addresses, optionally in CIDR notation, or hostnames of Zabbix servers.
Incoming connections will be accepted only from the hosts listed here.
If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally and '::/0' will allow any IPv4 or IPv6 address.
'0.0.0.0/0' can be used to allow any IPv4 address.
Note, that "IPv4-compatible IPv6 addresses" (0000::/96 prefix) are supported but deprecated by RFC4291.
Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.domain
Spaces are allowed.
ServerActive no (*) IP:port (or hostname:port) of Zabbix server or Zabbix proxy for active checks.
Multiple comma-delimited addresses can be provided to use several independent Zabbix servers in parallel. Spaces are allowed.
If port is not specified, default port is used.
IPv6 addresses must be enclosed in square brackets if port for that host is specified.
If port is not specified, square brackets for IPv6 addresses are optional.
If this parameter is not specified, active checks are disabled.
SourceIP no Source IP address for:
- outgoing connections to Zabbix server or Zabbix proxy;
- making connections while executing some items (web.page.get, net.tcp.port, etc.)
StartAgents no 0-63 (*) 3 Number of pre-forked instances of zabbix_agentd that process passive checks.
If set to 0, disables passive checks and the agent will not listen on any TCP port.
Timeout no 1-30 3 Spend no more than Timeout seconds on processing
TLSAccept yes, if TLS certificate or PSK parameters are defined (even for unencrypted connection), otherwise no What incoming connections to accept. Used for a passive checks. Multiple values can be specified, separated by comma:
unencrypted - accept connections without encryption (default)
psk - accept connections with TLS and a pre-shared key (PSK)
cert - accept connections with TLS and a certificate
This parameter is supported since Zabbix 3.0.0.
TLSCAFile no Full pathname of a file containing the top-level CA(s) certificates for peer certificate verification, used for encrypted communications between Zabbix components.
This parameter is supported since Zabbix 3.0.0.
TLSCertFile no Full pathname of a file containing the agent certificate or certificate chain, used for encrypted communications with Zabbix components.
This parameter is supported since Zabbix 3.0.0.
TLSConnect yes, if TLS certificate or PSK parameters are defined (even for unencrypted connection), otherwise no How the agent should connect to Zabbix server or proxy. Used for active checks. Only one value can be specified:
unencrypted - connect without encryption (default)
psk - connect using TLS and a pre-shared key (PSK)
cert - connect using TLS and a certificate
This parameter is supported since Zabbix 3.0.0.
TLSCRLFile no Full pathname of a file containing revoked certificates. This parameter is used for encrypted communications with Zabbix components.
This parameter is supported since Zabbix 3.0.0.
TLSKeyFile no Full pathname of a file containing the agent private key used for encrypted communications with Zabbix components.
This parameter is supported since Zabbix 3.0.0.
TLSPSKFile no Full pathname of a file containing the agent pre-shared key used for encrypted communications with Zabbix components.
This parameter is supported since Zabbix 3.0.0.
TLSPSKIdentity no Pre-shared key identity string, used for encrypted communications with Zabbix server.
This parameter is supported since Zabbix 3.0.0.
TLSServerCertIssuer no Allowed server (proxy) certificate issuer.
This parameter is supported since Zabbix 3.0.0.
TLSServerCertSubject no Allowed server (proxy) certificate subject.
This parameter is supported since Zabbix 3.0.0.
UnsafeUserParameters no 0-1 0 Allow all characters to be passed in arguments to user-defined parameters.
0 - do not allow
1 - allow
The following characters are not allowed:
\ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
Additionally, newline characters are not allowed.
UserParameter no User-defined parameter to monitor. There can be several user-defined parameters.
Format: UserParameter=<key>,<shell command>
Note that shell command must not return empty string or EOL only.
Shell commands may have relative paths, if UserParameterDir parameter is specified.
Examples:
UserParameter=system.test,who|wc -l
UserParameter=check_cpu,./custom_script.sh
UserParameterDir no Default search path for UserParameter commands. If used, the agent will change its working directory to the one specified here before executing a command. Thereby, UserParameter commands can have a relative ./ prefix instead of a full path.
Only one entry is allowed.
Example: UserParameterDir=/opt/myscripts

(*) The number of active servers listed in ServerActive plus the number of pre-forked instances for passive checks specified in StartAgents must be less than 64.

See also

  1. Differences in the Zabbix agent configuration for active and passive checks starting from version 2.0.0.