Zabbix notificando via PushBullet

    Resolvi escrever esse post, devido a dificuldade que eu tive em encontrar um script que não desse problema ou simplesmente não funcionasse para enviar notificação para o meu celular, pc ou etc… via Pushbullet no meu Zabbix.
Eu queria que eu e meus funcionários fossem notificados sempre que houvesse um problema em minha rede com as seguintes informações:

TITULO – STATUS(OK ou PROBLEM): NomeDoHost e tipo_do_problema
CORPO – O nome da trigger, status da trigger e o severidade da trigger

Depois de tentar tantos scripts eu encontrei uma lib para python3 que funcionou muito bem.
No seu servidor linux digite:

pip3 install pushbullet.py

Depois entre na pasta alertscripts do zabbix e depois crie um arquivo usando vim:

cd /usr/lib/zabbix/alertscripts

vim pushbullet-send.py

Eu criei o seguinte script:

#!/usr/bin/python3
from pushbullet import Pushbullet
import sys

api_key = sys.argv[1]
title = sys.argv[2]
body = sys.argv[3]

pb = Pushbullet(api_key)
push = pb.push_note(title, body)

Vamos dar para o novo script as permissões necessárias:

chmod + x pushbullet-send.py

chown zabbix:zabbix pushbullet-send.py

Agora vamos adicionar o script no Zabbix:

Administração -> Tipos de Midia -> Criar tipos de midia

Aonde esta a linha vermelha você adiciona o seu token do PushBullet, basta acessar o site do PushBullet com o seu login e senha e pedir para criar um token.

Agora vamos adicionar essa nova midia ao usuário:

Administração -> Usuários -> (Selecione o seu usuário) -> Aba Midia -> Adicionar

Adicione novamente o seu Token aonde se encontra a tarja vermelha.

Vamos criar a Ação no zabbix ( quando notificar usando o PushBullet ):

Configurações -> Ações -> Criar Ação

Na aba ação você coloca o nome que quiser, vamos agora atentar ao Assunto padrão e a Mensagem padrão

No campo Assunto padrão coloquei o seguinte:

{TRIGGER.STATUS}: {TRIGGER.NAME}

No campo Mensagem padrão coloquei:

Trigger: {TRIGGER.NAME}
Trigger status: {TRIGGER.STATUS}
Trigger severity: {TRIGGER.SEVERITY}
Trigger URL: {TRIGGER.URL}

Item values:

1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1}

Ative o campo mensagem de recuperação e preencha da mesma forma.

Agora na aba condições eu deixei o seguinte:

Na aba operações só temos que nos atentar no campo  Duração padrão do passo da operação, adicionar um usuário no campo Enviar para usuários e no campo Enviar apenas para você adicionar a mídia que você criou para o usuário.

Pronto e é isso. Bem para cada usuário você tem que adicionar uma nova midia passando o Token do usuário especifico.

Qualquer dúvida é só comentar.

Abraços

 

 

 

 

 

Deixe uma resposta

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.