Отправка оповещений в Slack

Отправка оповещений в Slack

Как по мне, — хорошая идея использовать slack для отправки различных нотификаций с заббикс сервера. Надеюсь все знают о slack и не стоит заострять внимания на этом. совсем недавно я познакомился с месседжером под названием SLACK. В нынешнее время, их очень моно. Но именно этот, обладает ряд преимуществ над другими.

Отправка оповещений в Slack

Я приведу наглядные примеры как можно выполнить интеграцию ваших скриптов со слаком.

Для начала, создаем аккаунт в slack-е. Создаем нужный для алертинга канал.

Отправка zabbix оповещений в Slack

Первом делом что стоит сделать, так это создать аккаунт в slack и создать все необходимое ( учетную запись, создать канал, добавить пользователей в канал).

Установить заббикс, я описывал этот процесс на своем сайте, вот полезные статьи по теме:

Установка Zabbix на Debian/Ubuntu/Linux Mint

Установка Zabbix на RedHat/CentOS/Fedora

Установка Zabbix + nginx+php-fpm + mariaDB в Unix/Linux

Установка Zabbix-agent в Unix/Linux

Оптимизация настроек Zabbix

Настройка Grafana с Graphite/Zabbix/Prometheus/MySQL/InfluxDB/Elasticsearch/CloudWatch для сбора и отображения метрик в Unix/Linux

-===СПОСОБ 1 — Установка плагина для zabbix ===-

zabbix-notify — это плагин для отправки уведомлений с zabbix-server в PagerDuty, Hipchat, Slack.

Для его работы, необходимо установить дополнительное ПО.

Debian/Ubuntu:

RedHat/CentOS/Fedora:

Используя Cpan:

Используя cpanm:

Скачиваем архив:

Переходим в папку и выполняем:

Нужно создать ко что на слаке… Открываем:

Ищем «Bots» -> «Add Configuration» -> Прописываем название бота ( я взял себе @zabbix_bot).

PS: Сохраните API Token, Он имеет вид -xoxb-202579554067-rcOej1t6Q9x7oBc1kBKmnРРО

Я ИЗМЕНИЛ СВОЙ, ЧТОБЫ НЕЛЬЗЯ БЫЛО ЕГО ИСПОЛЬЗОВАТЬ!

В созданном канале, выполняем:

Выполним тестирование…

  • @YOUR_ACC_NAME_ON_SLACK — Пользователь в слаке.
  • YOUR_TOKEN_HERE — Токен.

Или:

Открываем заббикс и переходим: Administration -> Media Types -> Create media type:

zabbix нотификация в slack

Прописываем:

  • Выбираем Type: Script
  • Выбираем Name: zbx-notify
  • Выбираем Script name: zbx-notify
  • Прописываем параметры:
    1: {ALERT.SENDTO}
    2: {ALERT.SUBJECT}
    3: {ALERT.MESSAGE}
    4: —api_token=YOUR_TOKEN_HERE
    5: —slack

Если в заббикс нет юзера, то создайте его для отправки уведомлений, после чего, — подключаем канал:

Подключаем канал

Send to — Заббикс канал в слаке!

Вообще, данный скрипт умеет отсылать уведомления и в HipChat/PageDuty. Но мне не приходилось настраивать интеграцию именно для них. возможно, я приведу примеры по установке для других служб, но будет это значительно позже.

-===СПОСОБ 2 — Используем простой bash скрипт ===-

Нужно создать web-hook, для этого открываем в браузере:

Где, YOUR_ACC_NAME — созданный слак аккаунт.  Далее, в поле для поиска, вводим :

Нажимаем на «Add Configuration» — > выбираем нужный канал ( его нужно создать было) -> Добавить Web-Hooks

Сохраните себе где-то Webhook URL (Он будут нужен попозже).

Открываем консоль на zabbix сервере и проверяем параметр:

Вывод:

Собственно, у меня папка для скриптов  —  /usr/lib/zabbix/alertscripts.

Напишем простой скрипт для отправки уведомлений:

В него, прописываем:

В нем нужно изменить название канала, можно смайл.

Назначаем ему права на исполнение:

Переходим к настройке заббикса. Открываем URL -> Administration > Media Types > create media type:

Настройка уведомлений в слак канал

Прописываем нужные поля. Создаем пользователя и говорим чтобы он отсылал все на канал. Для этого, открываем Administartion -> Users -> Media:

Добавдение юзера для нотификации в слак

И проверяем работу! Должно выйти что-то подобное:

zabbix + slack

На этом, у меня все. Статья «Отправка оповещений в Slack» завершена.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *