Существует ли какая-либо интеграция с Slack, позволяющая осуществлять мониторинг программ и отправлять уведомления в случае сбоя конкретной программы?
1 ответ
Да, Slack может получать сообщения в режиме реального времени с помощью Incoming Webhooks.
Для этого требуется только доступ в Интернет для вашего приложения или программы мониторинга, а также возможность сделать HTTP-запрос.
Вам нужно добавить интеграцию в свою слабую команду, возможно, по этой ссылке:
https://your-team-name.slack.com/apps/A0F7XDUAZ-incoming-webhooks
(Отказ от ответственности: не уверен, является ли токен A0F7XDUAZ
уникальным для каждой команды или не изменится в будущем, но, похоже, на данный момент он работает для всех моих команд Slack.)
Затем в любом случае (сбой ...) вы можете отправить HTTP-запрос на URL-адрес webhook, который будет использовать бота для отправки сообщения на заданный канал Slack (настраивается).
POST https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX
Content-type: application/json
{
"text": "An error has occured on {your-programm-name}.\nLorem Ipsum dolor sic amet..."
}
Конечно, вы можете настроить сообщение так, чтобы оно включало информацию о причине, трассировке стека и т.д.
Slack даже предоставляет Построитель сообщений, который поможет вам создать шаблон вашего сообщения.
Это хороший способ узнать, есть ли у программы проблема.
Однако, если вы собираете программу и хотите отслеживать ошибки, у вас есть более эффективные альтернативы Slack, использующие реальные средства отслеживания ошибок, которые намного мощнее. Мой лучший совет отныне - это sentry.io. Он включает в себя всю необходимую вам информацию о среде ошибок и может оповещать вас в режиме реального времени, по крайней мере, по электронной почте, возможно, даже когда-нибудь в Slack!