Мониторинг без драмы: Prometheus и Grafana для одного разработчика

15.09.2025 · 6 мин

Монитор с графиками и дашбордами

Когда я в одиночку поддерживаю пет-проект или небольшой внутренний сервис, соблазн пропустить мониторинг велик — кажется, что можно просто посмотреть логи, если что-то сломается. На практике так и происходит: что-то ломается, а узнаёшь об этом от пользователя, а не от системы. После пары таких случаев я всегда настраиваю минимальный мониторинг ещё до того, как сервис уходит в прод.

Минимальный набор, который реально нужен

Мне не нужен полноценный observability-стек с распределённой трассировкой для проекта на одного человека. Нужны три вещи: метрики (Prometheus), визуализация (Grafana) и алерты в удобный канал — у меня это Telegram-бот.

Экспортёр метрик поднимается вместе с приложением почти без усилий — в большинстве современных фреймворков это одна строка middleware. Дальше Prometheus раз в пятнадцать секунд опрашивает /metrics и складывает историю.

Какие метрики действительно важны

Я обычно начинаю с четырёх «золотых сигналов»: задержка ответа, трафик, количество ошибок и насыщение ресурсов (CPU, память, диск). Это покрывает подавляющее большинство реальных проблем без необходимости придумывать что-то экзотическое с первого дня.

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

Пример дашборда с графиками метрик

Алерты, на которые действительно стоит просыпаться

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

Сейчас у меня простое правило: алерт заводится только на то, что требует действия прямо сейчас. Если проблему можно спокойно разобрать утром — это не алерт, а запись в дашборде, которую я посмотрю на следующий день.

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

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