Doações

PagSeguro

PayPal

PicPay

Email-Graph-ZABBIX_Python

Em caso de dúvida, sugestão ou dificuldade junte-se a nós no Grupo do Telegram Gráfico no Email e Telegram.

O "How to" foi testado no ZABBIX 2.4, 3.0, 3.2, 3.4, 4.0 e no 4.2 no Debian 8-9/Ubuntu 14-18 e CentOS 6.x e 7, caso não utilize estas distros procure os pacotes descritos para sua necessidade.

Sumário


Requisitos:

Instale os pacotes

Debian/Ubuntu

$ sudo apt-get install -y wget unzip git dos2unix python-pip python-requests

CentOS 6.x, 7 e 8

sudo yum install -y epel-release ; sudo yum -y update ; sudo yum install -y wget unzip git dos2unix python-pip python-requests

Faça o download do script de instalação

cd /tmp ; wget https://raw.githubusercontent.com/sansaoipb/scripts/master/email.sh -O email.sh ; dos2unix email.sh ; sh email.sh

OBS:
Existe um local padrão onde fica os scripts, que tem 2 locais possiveis dependendo da forma de instalação do ZABBIX, compilando (/usr/local/share/zabbix/alertscripts/) ou por pacote (/usr/lib/zabbix/alertscripts/), respectivamente.
Ao final da execução do script, ele indicará qual pasta você acessará.

Edite os parâmetros:

Entre no arquivo configScrips.properties e edite os campos abaixo:

[PathSection]
  • “url” = 'http://127.0.0.1/zabbix' - URL de acesso ao FRONT com "http://"
  • “user” = 'Admin'
  • “pass” = 'zabbix'
[PathSectionEmail]
  • “smtp_server” = 'smtp.gmail.com:587'
  • “mail_user” = 'SeuEmail@gmail.com'
  • “mail_pass” = 'SuaSenha'

OBS:
1 – O usuário que você declarar no campo “user” precisa ter permissão no mínimo de leitura no ambiente.
2 – Se usar gmail, é preciso alterar o acesso à conta para aplicativos, se tiver "Verificação em duas etapas" ativado, é necessário criar uma "Senha de app", crie Aqui.
Caso não tenha verificação em duas etapas, pode somente ativar "Acesso a app menos seguros", altere Aqui.

Comando para teste

Script para realização do teste:
Script, Email.
Ex:

sudo -u zabbix ./emailgraph-teste.py SeuEmail@Provedor.com 

Configurando o envio:

Com o script adicionado no local indicado acima, precisamos realizar algumas configurações no Front do ZABBIX, no "Tipo de Mídia", (em Administração > Tipo de Mídia) e a "Ação" (em Configuração > Ações).

Tipo de Mídia

Zabbix 2.4



Zabbix 3.0 à 4.2



OBS:
1 – Na versão 3.0, é obrigatório a utilização das macros {ALERT.SENDTO}, {ALERT.SUBJECT} e {ALERT.MESSAGE}, em caso de dúvidas, leia a Documentação Aqui.

Configurando o usuário


Criando a Ação:

A “Mensagem Padrão” na aba “Ação” está sendo executada no formato “HTML”, então você pode realizar a formatação que desejar, somente com uma “exigência”, a primeira linha deve permanecer com as macros/variáveis abaixo ilustradas (as macros/variáveis entre as "#" ), podendo editar da segunda linha em diante.

Exemplificando sobre o HTML, abaixo começou com um parágrafo, e o {HOST.HOST} coloquei em negrito.

Imagem da Mensagem na Ação:



Modelo Mensagem Padrão
{ITEM.NAME}#{EVENT.ID}#{ITEM.ID}#00C800#3600#

Foi detectado um evento no equipamento {HOST.HOST}.

OBS:
”00C800” é a cor da linha (verde) em Hex. sem tralha, e ”3600” é o período do gráfico (1h) em segundo.

Resultado:



Contribuição

Neste link você consegue criar de modelos para mensagens HTML, que foi indicado pelo amigo "Mario" @ZXRTI
Site para criação de modelos HTML

Conclusão

1 – Este script é para agilizar a análise e ficar visualmente mais agradável o recebimento dos alarmes.

2 – O script realiza uma consulta API mais ampla, detecta automaticamente se o item é de caracter/log/texto, e não envia o gráfico "sem dados" somente o texto, ele dá "ack" no evento e informa quem foi notificado naquela ação.