Проект: MonCron — мониторинг cron-задач для тех, кто задолбался и хочет спокойствия  Публичный пост
25 мая 2026  16
MonCron — мониторинг cron-задач для тех, кто задолбался и хочет спокойствия
https://moncron.com/

Мы сами упахались, пока его разрабатывали, так что вам не обязательно =)

Что это за сервис мониторинга cron-задач

Если коротко, работа MonCron — собирать, фильтровать, хранить логи, следить, чтобы ваши скрипты выполнялись успешно и вовремя, предупреждать о сбоях и зависаниях. А еще держать информацию по вашим cron-задачам в одном месте, чтобы все проекты были как на ладони.

В первую очередь это инструмент для DevOps-инженеров, но ориентирован также на разработчиков (включая инди), аналитиков, фрилансеров и вайбкодеров.

Дешевле и специализированнее, чем Datadog, быстрее, чем самописное решение, подключение в разы проще, чем у Grafana, тарифы понятнее, чем у Cronitor, версия для РФ с российскими серверами и оплатой — скоро выйдет. И планов на будущее — вагон =)

Как нам вообще пришла в голову шальная идея делать сервис мониторинга cron-задач

Тут всё просто:

  • Нам самим нужен сервис мониторинга скриптов по расписанию, а то, что есть на рынке, не устраивает полностью.
  • Если говорить о российском рынке (а у нас один разработчик из Южной Кореи, а второй из России, так что если обнаглеть в достаточной мере, нас можно даже пафосно назвать международным стартапом), то после блокировки оплат с российских карт многие сервисы мониторинга cron вообще стали недоступны.
  • Это старый рынок с устоявшимися игроками, где номинально есть пара лидеров (Grafana, Datadog), но к этим лидерам у пользователей масса вопросов. Для первого нужен отдельный человек, который неделю будет курить мануалы, прежде чем подключит хоть что-то. Второй постфактум присылает счета на оплату с неожиданными суммами, повергающими клиентов в отчаяние, а архив логов у него быстро становится раздутым и зверски дорогим. Мы решили вместо швейцарского ножа сделать удобный сервис с конкретной задачей, понятными тарифами и быстрым подключением.

Короче, мы знали главное: проблема есть, она реальная, на рынке есть свободное место, понятно, как продвигать, кому предлагать, в какую сторону двигаться, как разрабатывать продукт. Да, есть конкуренты, ну и что? У нас точно есть шанс.

Так почему бы и не воспользоваться?

Как MonCron помешает фоновым задачам расчесывать вам нервы

Мониторинг cron-задач был нужен нам самим, так что при разработке мы думали, чего хотели бы от такого сервиса.

Ответ для нас — больше спокойствия и меньше игры в детектива с попытками выяснить, что упало, когда, как и почему.

История выполнения всех задач по расписанию в одном месте

С удобной разбивкой по проектам. Работаете в компании? Можно сделать проекты по функциям: парсеры, бэкапы и так далее. Фрилансер или инди-разработчик? Тогда проекты по продуктам. Словом, сами решаете, куда какие задачи должны относиться, чтобы удобнее было за ними присматривать.

В каждом проекте — набор задач со светофором: последний запуск прошел успешно, провалился или застрял. В каждой задаче — набор запусков с таким же светофором и графиком, который отражает статусы запусков и объем логов.


Цель — сделать так, чтобы мониторинг задач в cron не отнимал уйму времени, а главная информация была видна сразу.

Короче, как в “ДМБ”: “В чем смысл жизни? В расписании дежурств по КПП. Посмотрел — и всё понятно”.

Контроль выполнения cron-задач, включая зависшие

Цель — спасти от ситуаций, когда скрипт тихонечко прилег и не отсвечивает, а вы думаете, что он исправно пашет за троих.

Вот вам пример. У меня есть бот в телеге, куда падают все логи с критическими ошибками из разных моих проектов. Удобное решение, но учитывает только одну ситуацию — когда что-то упало. И полностью игнорит случаи, когда оно даже не запустилось. Никаких ошибок — скрипт просто не включился и всё. Или включился и безнадежно завис.

И как-то раз я о таком провале узнала от коллеги, который пришел в личку и спросил: “А у тебя вот эта штука отключена, да?” На сервере были технические работы примерно за неделю до того момента, и что-то пошло не так. Было больно. Спасибо, что это был хотя бы не бэкап базы данных.

В нашем сервисе мониторинга cron при создании задачи вы можете указать grace period — как долго мы будем ждать логов об успешном выполнении, прежде чем сообщим вам, что задача зависла.

Удобный поиск и фильтрация логов

Комфортный для разработчиков формат:


Фильтруем по уровням:


Фильтруем по времени: фигачим курсором по графику и тянем от одной временной точки до другой.


Используем поиск:


Позже добавим возможность закреплять логи. А еще чуть позже — redacted. То есть до сохранения в БД будем чистить любую чувствительную информацию, которая могла прокрасться к нам при логировании cron-задач: например, email пользователей, их id в телеграме и пр.

Подключение быстрое, словно герой вестерна

Сейчас включить отслеживание cron-задач можно через API, позже добавим SDK.

Но и в том, и в другом случае не нужно что-то долго изучать, значительно менять скрипты, разбираться в сложной панели управления и библиотеках. Взял ключ, прописал запросы и готово. Когда добавим SDK, появится способ “нежно завернул скрипт в декоратор”.


Соответственно, если захотите отказаться от сервиса мониторинга cron или сменить на другой, это можно будет сделать безболезненно.

С нами легко договориться

Мы стремимся сделать сервис максимально удобным, поэтому если у вас в процессе использования MonCron появятся свои хотелки, пишите в личку мне или Игорю. Мы постараемся учесть всё, что сможем =)

Мы почитали, что люди говорят о тарифах, и сделали выводы

Если коротко.

Плата за число рабочих мест или пользователей — нет. За число задач, объем/количество и время хранения логов — да.

Постоплата с хитрой сметой, которую составляют по факту использования — нет. Понятные тарифы с конкретными лимитами и сроком хранения логов — да.

Оплата в России или по миру — и первое, и второе, но второе — чуть позже. Для сервиса в РФ сделали список ожидания. Если он для вас актуален, запишитесь, пожалуйста, и мы поймем, насколько шустро надо делать версию для России.

Планы на будущее: сберечь вам еще больше нервных клеток

Всё это мы будем постепенно добавлять в сервис.

Система алертинга для cron-задач со встроенными логами

Можно будет запрашивать алерты в нужные каналы, и прилетать они будут сразу с контекстом падения.

То есть вы зашли в телеграм, увидели уведомления о сбое заданий cron, в которые уложены последние логи уровня warning/error, и побежали тушить пожар, не заходя в панель управления. Или сразу переслали алерт коллеге, который может вмешаться и быстро всё починить.

Отправка оповещений при ошибках в заданиях cron нужным людям

Это про гибкую настройку алертов. Удобно, когда у вас большая компания и нужно, чтобы оповещения по проектам, связанным с БД, падали одному человеку, со сбором данных для аналитики — другому, и так далее.

И да, каждый сможет настроить для себя оповещения в телеграм, Slack, email и пр.

Ограничение ролей и совместная работа с системой мониторинга cron

Можно будет настраивать ограничение ролей в команде: например, разработчик может записывать и удалять задачи и логи, а желающий всё знать менеджер — только просматривать.

Доступ к логам для ИИ-агентов

Только для тех, кому это нужно: ваши ИИ-агенты смогут следить за логами и запусками заданий cron, поддерживать актуальный контекст, смотреть, что меняется в скриптах, и так далее.

Это для тех, кто устал тратить время, нервы и токены на бесполезные из-за потери контекста ответы нейросети.

Как MonCron свернул нам на двоих 30 литров крови за год

Откровенно об этом мы расскажем в отдельном непубличном посте. А здесь — покороче и без разбора полетов =)

Итак.

Производственный ад

У нас на двоих был опыт в переводах и контент-маркетинге — по 13 лет, в разработке — 10 лет.

А в проджект-менеджменте и всяком продакт-оунерстве — 0 лет.

Уже можно прикинуть, какие проблемы нас ожидали =)

Мы понимали, как разработать продукт (архитектура, стек и пр.), запустить его и продвинуть. Но вот как организовать повседневную работу от старта до завершения — нет.

Мы работали по принципу “наметили задачи и побежали делать”, но в процессе упускали важное: например, увлеклись работой над десктопом и забыли сделать мобильную версию (сейчас это уже исправлено). Что в итоге? У нас был стройный пул задач, а сверху каждую неделю возникала гора неучтенки.

Мы путались, заваливали себя все новыми и новыми задачами. Намечали, что нужно сделать до релиза, а потом оказывалось, что мы не учли примерно 70% работы. Это как в кошмарном сне, где ты бежишь к чему-то, а это классное, безопасное, желанное что-то постоянно отодвигается и отодвигается. И ты уже выбиваешься из сил, но кажется, что не приблизился ни на шаг.

Осложняло ситуацию то, что у нас обоих полно дополнительных обязанностей помимо проекта. Мы выкраивали время вне работы, домашних и семейных дел. Это и так утомительно, а когда еще и релиз бесконечно откладывается…

А еще — сезонный грипп, завалы на работе, всяческие неурядицы.

В итоге за год разработки бывали случаи, когда мы забрасывали проект месяца на два.

Подставы от нейросети

ИИ мы не пускаем в проект, не разрешаем ничего править в готовом коде и тем более деплоить. Используем для разработки шаблонного кода, но при этом тщательно проверяем. Сервис работает с логами, персональными данными — он должен быть безопасным, а мы должны хорошо понимать, как устроен проект от начала до конца.

И лишь однажды мы поспешили, доверили нейросети допилить страницы на фронте и написать тесты, а потом как следует не проверили. Запушили. И у нас обвалился прод. Итог — несколько дней ушло на то, чтобы всё исправить.

Отдельная жесть — ревью кода от Claude. Думали, это сэкономит нам время и поможет находить слабые места в проекте. А по факту большая часть “исправлений” — это либо очень тупые придирки, либо галлюцинации, не имеющие отношения к проекту. Несколько недель мы на полном серьезе пробовали с этим жить и что-то править, но это настолько демотивировало, бесило и сжирало столько нервов и времени, что пришлось либо игнорить ревью от нейросети, либо бесконечно его подкручивать.

В итоге мы нашли для себя способ ускорять разработку с помощью ИИ, ничего не ломая и не пуская нейросеть куда не следует, но это заняло время. Много времени.

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

Связанные посты
Откомментируйте первым 👇

😎

Автор поста открыл его для большого интернета, но комментирование и движухи доступны только участникам Клуба

Что вообще здесь происходит?


Войти  или  Вступить в Клуб