bot: раздел «Алерты» — рассылка всем, восстановление, список #15
Notifications
Due Date
No due date set.
Depends on
Reference: HSE/tgit#15
Reference in New Issue
Block a user
Описание
Требования AL-1…AL-7 из SPEC §4.4, ARCHITECTURE §2.9, ADR-012.
Желаемый результат
kind+serviceсо счётчиком, «✅ восстановлено» ответом на исходный алерт.Подзадачи
config/alerts.yamlapp/alerts/detectors.py— чистые функции событие → AlertEventapp/alerts/service.py— дедупликация, восстановлениеapp/alerts/broadcast.py— очередь отправки с лимитом Telegramapp/bot/routers/alerts.py— список и карточкиАнализ
Затрагиваемые файлы
app/alerts/app/bot/routers/alerts.pyconfig/alerts.yamlОграничения и риски
Шторм: бесконечный рестарт = один алерт со счётчиком. Заблокировавший бота участник — не ошибка рассылки.
Как проверить
examples/crash→ один алерт всем + «восстановлено»;examples/cpu_hog→ 🔥 через ~1 мин; список показывает оба.Лог выполнения
2026-10-13
bot: алерты о падениях и перегрузкеto bot: раздел «Алерты» — рассылка всем, восстановление, списокСмержено в
devчерез PR #47 — закрываю.