Zabbix + Pushbullet: простой способ push-оповещения

У нас на предприятии, основным способом оповещения о событиях системы мониторинга Zabbix является email-рассылка. Jabber не прижился ввиду малой распространенности, а СМС устарел (хоть и весьма универсален). Хотелось предложить ещё одну альтернативу, которой и стали push-уведомления.Сервис Pushbullet уже успел сделать себе имя на платформе Android, а с недавних пор пытается покарать и iOS. Pushbullet умеет слать «пуши» на телефоны, принимать их в браузере (Chrome и Firefox) и из него же снова отправлять. В общем очень удобный и полезный сервис, который плюс ко всему имеет открытый API. Посредством этого API мы и будем отправлять события Zabbix на телефоны сотрудников.

7639353f94eb67f1dcf8b6e01853c1d9.png

Шаг 1: Узнайте свой Pushbullet API Предполагается, что у вас уже есть аккаунт на данном сервисе. В этом случае просто перейдите в настройки своего профиля.6004a176069ab1ff382624cbc87d012c.pngШаг 2: Создаём bash-скрипт Создайте bash-скрипт для отправки push-уведомлений. Назовите его pushbullet-all #!/bin/bash

curl https://api.pushbullet.com/api/pushes \ -u $1: \ -d type=note \ -d title=»$2» \ -d body=»$3» \ -X POST Где $N — переменные. $1 — уникальный API (позже указывается в профиле пользователей Zabbix), $2 — будет заголовком, $3 — станет телом сообщения. Подробнее в справке Zabbix.Скрипт нужно скопировать в папку alertscripts вашего Zabbix-сервера (например: /usr/local/share/zabbix/alertscripts). Не забудьте сделать скрипт исполняемым (chmod +x pushbullet-all).

Шаг 3: Настройка Zabbix Создайте новый способ оповещения (Администрирование — Способы оповещений) b729d4f9031a57c0e1268b3f2f2a376c.pngСоздайте новое действие, на вкладке «Операции» определите новый тип уведомлений 0dca3c1dc9f10b03b3ce8b5ecc2fdf5c.pngВ настройках профиля пользователя укажите Ваш API Key bad038240362bd4c964d2c4c978d32cf.pngСоответственно, каждый ответственный сотрудник указывает в своём профиле личный API и начинает получать уведомления.Шаг 4: Наслаждайтесь 92744ade7888455c8a3756aefc4a2849.pngP.S. При использовании данного метода, push-уведомления будут приходить на ВСЕ устройства Вашего Pushbullet-аккаунта. К сожалению, в данном (многопользовательская система) случае сложно настроить получение уведомлений на конкретные устройства, но никто Вам не мешает применить данный способ в домашних условиях*.Узнаем перечень устройств на аккаунте curl -u : https://api.pushbullet.com/api/devices Отлавливайте уникальные идентификаторы «iden» в выводе этой команды, после чего формируйте следующий bash-скрипт (cmd, bat …) #!/bin/bash

curl https://api.pushbullet.com/api/pushes \ -u ваш_api: \ -d device_iden=нужный_iden \ -d type=note \ -d title=Заголовок \ -d body=Текст \ -X POST * curl для Windows можно найти например в пакете cygwin.

© Habrahabr.ru