Às vezes, você pode querer executar uma verificação de agent que não vem predefinida no Zabbix. É aí que os parâmetros de usuário ajudam.
Você pode escrever um comando que recupere os dados necessários e incluí-lo no parâmetro de usuário no arquivo de configuração do agent (parâmetro de configuração 'UserParameter').
Um parâmetro de usuário tem a seguinte sintaxe:
Como você pode ver, um parâmetro de usuário também contém uma chave. A chave será necessária ao configurar um item. Insira uma chave de sua escolha que seja fácil de referenciar (deve ser única dentro de um host).
Reinicie o agent ou use a opção de controle em tempo de execução do agent para carregar o novo parâmetro, por exemplo:
Em seguida, ao configurar um item, insira a chave para referenciar o comando do parâmetro de usuário que você deseja executar.
Os parâmetros de usuário são comandos executados pelo agent do Zabbix. Observe que até 16 MB de dados podem ser retornados antes das etapas de pré-processamento do valor do item.
O /bin/sh é usado como interpretador de linha de comando em sistemas operacionais UNIX. Os parâmetros de usuário obedecem ao tempo limite de verificação do agent; se o tempo limite for atingido, o processo do parâmetro de usuário bifurcado será encerrado.
Veja também:
Um comando simples:
O agente sempre retornará '1' para um item com a chave 'ping'.
Um exemplo mais complexo:
O agente retornará '1', se o servidor MySQL estiver ativo, '0' - caso contrário.
Parâmetros de usuário flexíveis aceitam parâmetros com a chave. Dessa forma, um parâmetro de usuário flexível pode ser a base para criar vários items.
Parâmetros de usuário flexíveis têm a seguinte sintaxe:
| Parâmetro | Descrição |
|---|---|
| Key | Chave única do item. O [*] define que esta chave aceita parâmetros dentro dos colchetes. Os parâmetros são fornecidos ao configurar o item. |
| Command | Comando a ser executado para avaliar o valor da chave. Apenas para parâmetros de usuário flexíveis: Você pode usar referências posicionais $1…$9 no comando para se referir ao respectivo parâmetro na chave do item. O Zabbix analisa os parâmetros entre [ ] da chave do item e substitui $1,...,$9 no comando de acordo. $0 será substituído pelo comando original (antes da expansão de $0,...,$9) a ser executado. Referências posicionais são interpretadas independentemente de estarem entre aspas duplas (") ou simples ('). Para usar referências posicionais sem alteração, especifique dois cifrões - por exemplo, awk '{print $$2}'. Neste caso, $$2 será convertido em $2 ao executar o comando. |
Referências posicionais com o sinal $ são procuradas e substituídas pelo agent do Zabbix apenas para parâmetros de usuário flexíveis. Para parâmetros de usuário simples, esse processamento de referência é ignorado e, portanto, qualquer citação do sinal $ não é necessária.
Certos símbolos não são permitidos em parâmetros de usuário por padrão. Veja a documentação de UnsafeUserParameters para uma lista completa.
Algo muito simples:
Podemos definir um número ilimitado de itens para monitoramento, todos com formato ping[algo].
Vamos adicionar mais sentido!
Este parâmetro pode ser usado para monitorar a disponibilidade do MySQL base de dados. Podemos passar nome de usuário e senha:
Quantas linhas correspondem a uma expressão regular em um arquivo?
Este parâmetro pode ser usado para calcular o número de linhas em um arquivo.
O valor de retorno do comando é uma saída padrão juntamente com um erro padrão produzido pelo comando.
Um item que retorna texto (caractere, log ou tipo de informação de texto) não ficará não suportado em caso de uma saída de erro padrão.
O valor de retorno é limitado a 16MB (incluindo espaços em branco à direita que são truncados); limites do banco de dados também se aplicam.
Parâmetros de usuário que retornam texto (caractere, log ou tipo de informação de texto) também podem retornar um espaço em branco. Em caso de resultado inválido, o item ficará não suportado.