Anteriormente mostrei como configurar Media Type com uma conta de email do Gmail, aqui trago a criação do alerta no Telegram, pois nada melhor do que se adaptar a tecnologia e utiliza-la a seu favor.
1 - Preparar ambiente no CentOS 7
Abaixo a instalação dos pacotes necessários e os módulos do Python, criação do Script para envio das mensagens, se atente em alterar 'CHAVE_API_GERADA_NO_TELEGRAM' com a chave que será gerada no Telegram e ativar o parametro AlertScripts no "zabbix_server.conf".
GitHub do projeto pyTelegramBotAPI: https://github.com/eternnoir/pyTelegramBotAPI.git
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
[root@zabbix]# yum -y install python-pip git python python-devel [root@zabbix]# pip install pyTelegramBotAPI pyopenssl ndg-httpsclient pyasn1 gcc make openssl-devel [root@zabbix]# git clone https://github.com/eternnoir/pyTelegramBotAPI.git [root@zabbix]# cd pyTelegramBotAPI [root@zabbix]# python setup.py install [root@zabbix]# mkdir /usr/lib/zabbix/alertscripts [root@zabbix]# vim /usr/lib/zabbix/alertscripts/telegram.py #!/usr/bin/env python import telebot,sys BOT_TOKEN='CHAVE_API_GERADA_NO_TELEGRAM' DESTINATION=sys.argv[1] SUBJECT=sys.argv[2] MESSAGE=sys.argv[3] MESSAGE = MESSAGE.replace('/n','\n') tb = telebot.TeleBot(BOT_TOKEN) tb.send_message(DESTINATION,SUBJECT + '\n' + MESSAGE) [root@zabbix]# chown -R zabbix.zabbix /usr/lib/zabbix/alertscripts [root@zabbix]# chmod +x /usr/lib/zabbix/alertscripts/telegram.py [root@zabbix]# grep AlertScripts /etc/zabbix/zabbix_server.conf AlertScriptsPath=/usr/lib/zabbix/alertscripts |
2 - Criar Bot no Telegram
No seu Telegram adicione o @BotFather e entre com "/newbot" para criação do Bot, abaixo imagem:
Após criação do Bot, crie um grupo e adicione ele, lembrando que o username é a identificação no caso acima "zabbix_jp_bot". E também altere no arquivo "/usr/lib/zabbix/alertscripts/telegram.py" a Chave API.
3 - Identificar ID dos Grupos
Para identificar os Grupos do Telegram entre no link abaixo colocando a sua chave API, com isso você irá ver as conversar e identificar o ID do grupo, normalmente os ID de Grupos iniciam com "-NUMERO", abaixo um exemplo como ira encontrar na tela:
https://api.telegram.org/botCHAVE_API_GERADA_NO_TELEGRAM/getUpdates
4 - Testar pelo terminal
Para testar no terminal execute o comando chamando o "ID_GRUPO ASSUNTO MENSAGEM":
1 |
[root@zabbix]# python /usr/lib/zabbix/alertscripts/telegram.py -123456789 ASSUNTO MENSAGEM |
5 - Criar estrutura no Zabbix
Criar Mídia types:
Adicionar Mídia para o usuário, abaixo pode ver que no campo "Send To" é colocado o grupo do Telegram:
6 - Validação, agora basta gerar o gatilho para teste