Open source · MIT

Pulse

Монитор фоновых задач по принципу «мёртвой руки»: cron пингует свой URL, тишина в срок означает сбой и уведомление.

v1.0.0 Молчание как сигнал
Go 1.26chiSQLitehtml/templateDockerApple HIG
Pulse

Отсутствие сигнала и есть сигнал

Обычный мониторинг отвечает на вопрос «жив ли сервер». Про ночной бэкап, который перестал отрабатывать три недели назад, он не скажет ничего — это выясняется при попытке восстановиться.

Pulse смотрит с другой стороны. У каждой проверки свой URL. Задача дёргает его после успешного прогона. Не дёрнула в срок плюс отсрочку — проверка падает и уходит уведомление в Telegram или на вебхук.

Что внутри

Два вида расписания

Простой период («каждые 24 часа») или cron-выражение. Отсрочка отделяет задачу, которая идёт дольше обычного, от той, что не завершилась.

Старт, успех, сбой

Сигнал /start измеряет длительность прогона, /fail сообщает об ошибке явно, не дожидаясь истечения срока.

Вывод задачи в ленте

Лог скрипта уходит в теле запроса и показывается рядом с событием — не нужно лезть на сервер за причиной.

Консоль вместо сетки

Главный экран отвечает на вопрос «что только что произошло»: лента событий справа, проверки слева как фильтры.

Уведомления

Telegram и произвольные вебхуки. Канал самодостаточен: токен и адрес хранятся вместе, без глобальных настроек.

Один бинарник

Go и SQLite: ни внешних сервисов, ни очередей, ни планировщика. Фоновая горутина проверяет сроки раз в 30 секунд.

Скриншоты

Консоль: лента событий и проверки со статусами
Консоль: лента событий и проверки со статусами
Карточка проверки: подключение и история сигналов
Карточка проверки: подключение и история сигналов
Форма: период или cron, отсрочка, теги
Форма: период или cron, отсрочка, теги
Каналы уведомлений
Каналы уведомлений
Консоль в тёмной теме
Консоль в тёмной теме
История сигналов в тёмной теме
История сигналов в тёмной теме

Установка

git clone https://github.com/dripips/pulse.git cd pulse docker compose up -d

Есть проект или идея?

Напишите мне, обсудим задачу.