Нотификации в telegram о падении приложения, через графану
newsare.net
Это не анонсированная третья часть. Первые две здесь:1. Подготовка Django приложения для локальной разработки и деплоя2. Django приложение в докере.Нотификации в telegram о падении приложения, через графану
Это не анонсированная третья часть. Первые две здесь:1. Подготовка Django приложения для локальной разработки и деплоя2. Django приложение в докере. Логирование и мониторинг(тоже в докере)Не анонсированная, потому что этот способ подходит для любого приложения с метриками через Prometheus, но как настраивать их для конкретного Django приложения можно посмотреть в предыдущих частях.Для начала нужно создать telegram-бота, находим бота BotFather и создаем нового бота в нем с помощью команды /newbot, получаем токен вашего бота.Теперь нужно получить ChatId. Для этого, напишите вашему новому боту сообщение, а затем откройте в браузере(желательно инкогнито, а еще лучше curl-ом) следующий адрес https://api.telegram.org/bot<YOUR_BOT_TOKEN>/getUpdatesЗаменив <YOUR_BOT_TOKEN> на токен вашего бота. В ответе вы получите json с информацией о последних сообщениях, отправленных вашему боту. В этом JSON найдите поле chat, которое будет содержать ваш id.Значение поля id внутри объекта chat — это и есть ваш Chat ID.Ну, основное позади.Далее переходим в графану Home -> Alerting -> Contact points Там у вас, если еще не было Contact points редактируем единственный существующий.Вводим любое название и в поле Integration выбираем Telegram.Там указываем BOT API Token и Chat ID полученные ранее, сохраняем.Переходим в Alert rules в том же Alerting и создаем новое правило — New alert rule.Тут мы подразумеваем, что у вас уже есть настроенный на приложение Prometheus, хотя бы из предыдущих шагов.Итак, в первом поле вводим любое название правила. Ниже в А выбираем Prometheus, в Metric вводим up и в лэйблах выбираем приложение. Далее в B выбираем input A, Function — Min, Mode — Strict. В С(Threshold) выбираем Input — B, ниже IS BELOW — 1. Читать далее Read more