Мониторинг сайта / Демопроект
FlowWatch
Сервис проходит важные сценарии в браузере и проверяет, сохранилась ли заявка или заказ на сервере.

Задача
Страница может открываться, а форма — показывать успех, хотя заявка не записалась. Команде нужно определить, на каком шаге сломался сценарий, и подтвердить, когда он восстановился.
Решение
FlowWatch запускает вход, отправку заявки и тестовый заказ в Chromium. Сохранение проверяется через серверный интерфейс чтения. Два последовательных сбоя открывают инцидент, три успешные проверки подтверждают восстановление.
Как это работает


Результат
В отчёте зафиксированы 39 пройденных тестов, включая 12 браузерных. Демо подтвердило один инцидент, его восстановление и два уведомления в локальном приёмнике. Проверки шли на демонстрационном сайте. Подключение к Telegram и запуск в Docker в этот прогон не входили.
Мой вклад
Я разделил планировщик, фоновый обработчик и браузерный процесс. PostgreSQL хранит состояния и предотвращает параллельный запуск одной проверки. Инциденты и уведомления фиксируются транзакционно, а панель показывает этап сбоя и ход восстановления.
Архитектура
Браузерные наблюдения поступают в общий журнал, из которого формируются инциденты.
Планировщик
Создаёт задачи по расписанию без дублирования слотов.
Связи компонентов
- Планировщик: Создаёт задачи по расписанию без дублирования слотов.
- Браузерный сценарий: Изолированный процесс проходит сценарий и сверяет результат на сервере.
- Инциденты: Последовательность наблюдений обновляет инцидент и ставит уведомление в очередь.
- Планировщик → Браузерный сценарий
- Браузерный сценарий → Инциденты