Mas o que é o Sender API for Zabbix
É um componente criado para facilitar o uso do recurso “sender” da Ferramenta de monitoramento Zabbix.
“O sender se trata de uma lib. que pode ser integrada diretamente no código para enviar métricas para o Zabbix”
Por muitas vezes é necessário fazer diversas homologações e testes para adicionar novos recursos para a aplicação o que pode inviabilizar uma integração com recursos terceiros ou em alguns casos quando skill técnicos são necessários.
Com o Sender API for Zabbix é necessário apenas apontar para o endpoint (API), disponibilizado passando algumas informações para o host/item
E o valor da métrica será enviado ao Zabbix sem a necessidade de lib. ou pacotes no código da sua
aplicação, poderá ser chamado de qualquer lugar com suporte a http.
How to use
É necessário ter um host e item do tipo zabbix trapper para ser passado no body ao realizar o post, a descrição está descrita abaixo:
Criar um host no Zabbix
– Em configurações / Hosts / Create host
Defina um nome e adicione a um grupo (demais opções conforme a sua necessidade).
– No exemplo estou colocando o nome Sender, ao finalizar clique em add.
Agora crie um template com o nome desejado.
– Em Templates/Create Template
Acesse novamente o template e crie o item conforme imagens a seguir.
Create Item:
No exemplo acima incluímos o nome para o item, o tipo como Zabbix Trapper (que permite receber dados da API) e a chave (este que é o identificador para a métrica).
Tipo de informação pode ser definido conforme a sua necessidade o Sender API pode enviar Strings ou valores numéricos para o Zabbix, porem o mesmo será interpretado conforme o tipo definido, ressaltando que existem formas para alterar o tipo de dado e ou estrutura usando Preprocessing (não discutidos neste documento).
Agora adicione o template ao host criado no primeiro step.
Atualize e agora vamos usar o microserviço do Sender API, neste exemplo será configurado no Docker.
Faça o download da imagem no Docker Hub:
– docker push rafasera/sender-api-zbx:latest
Inicie a mesma conforme imagem e descrição abaixo
Aqui foi exposta a porta 80
Em API_URL informe o endereço do Zabbix.
Em API_PORT informe a porta do seu Zabbix, default é 10051
Após isso aguarde inicializar.
“OBS você pode encontrar o mesmo tutorial acessando o container no caminho default que definiu no meu caso seria a localhost”
Por fim vamos utilizar o Sender-API
Abra o Postman e acesse a rota:
– https://filgs.com.br/api/v1/zabbix-sender
Tipo:
– POST
Body:
Obs.
– O endereço localhost foi atribuído pelo docker ressaltando que estou usando localmente.
– O body deve conter o host criado no Zabbix para receber a métrica
– A chave do Item (key)
– E o valor da métrica que pode ser enviado por outra ferramenta ou aplicação.
Não havendo problemas de estrutura ou comunicação com o Sender-API receberá a mensagem de sucesso.
Em seguida a métrica enviada chegara no seu Zabbix.
No responses yet