У нас на предприятии, основным способом оповещения о событиях системы мониторинга Zabbix является email-рассылка. Jabber не прижился ввиду малой распространенности, а СМС устарел (хоть и весьма универсален). Хотелось предложить ещё одну альтернативу, которой и стали push-уведомления.
Сервис Pushbullet уже успел сделать себе имя на платформе Android, а с недавних пор пытается покарать и iOS. Pushbullet умеет слать «пуши» на телефоны, принимать их в браузере (Chrome и Firefox) и из него же снова отправлять. В общем очень удобный и полезный сервис, который плюс ко всему имеет открытый API. Посредством этого API мы и будем отправлять события Zabbix на телефоны сотрудников.
Шаг 1: Узнайте свой Pushbullet API
Предполагается, что у вас уже есть аккаунт на данном сервисе. В этом случае просто перейдите в настройки своего профиля.
Шаг 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
Создайте новый способ оповещения (Администрирование — Способы оповещений)
Создайте новое действие, на вкладке «Операции» определите новый тип уведомлений
В настройках профиля пользователя укажите Ваш API Key
Соответственно, каждый ответственный сотрудник указывает в своём профиле личный API и начинает получать уведомления.
Шаг 4: Наслаждайтесь
P.S.
При использовании данного метода, push-уведомления будут приходить на ВСЕ устройства Вашего Pushbullet-аккаунта. К сожалению, в данном (многопользовательская система) случае сложно настроить получение уведомлений на конкретные устройства, но никто Вам не мешает применить данный способ в домашних условиях.
Узнаем перечень устройств на аккаунте
curl -u <your api key here>: 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
Автор: soulruins