Estendendo os agents do Zabbix

Este tutorial fornece instruções passo a passo sobre como estender a funcionalidade do agent do Zabbix com o uso de um user parameter.

Etapa 1

Escreva um script ou linha de comando para recuperar o parâmetro necessário.

Por exemplo, podemos escrever o seguinte comando para obter o número total de consultas executadas por um server MySQL:

mysqladmin -uroot status | cut -f4 -d":" | cut -f1 -d"S"

Quando executado, o comando retorna o número total de consultas SQL.

Etapa 2

Adicione o comando ao arquivo de configuração zabbix_agentd.conf:

UserParameter=mysql.questions,mysqladmin -uroot status | cut -f4 -d":" | cut -f1 -d"S"

mysql.questions é um identificador exclusivo. Ele pode ser qualquer identificador de chave válido, por exemplo, queries.

Teste este parâmetro usando o agent Zabbix com a flag -t (se estiver sendo executado como root, observe, no entanto, que o agent pode ter permissões diferentes quando iniciado como um daemon):

zabbix_agentd -t mysql.questions
Etapa 3

Recarregue os parâmetros do usuário a partir do arquivo de configuração executando:

zabbix_agentd -R userparameter_reload

Você também pode reiniciar o agent em vez de usar o comando de controle em tempo de execução.

Teste o parâmetro usando o utilitário zabbix_get.

Etapa 4

Adicione um novo item com Key=mysql.questions ao host monitorado. O tipo do item deve ser Zabbix Agent ou Zabbix Agent (active).

Observe que o tipo dos valores retornados deve ser configurado corretamente no server Zabbix. Caso contrário, o Zabbix não os aceitará.