Мониторинг: логи, healthcheck, Prometheus/Grafana
Уровень логирования, эндпоинт /healthz и метрики Prometheus: как надежно мониторить ваш self-hosted инстанс n8n.
Тому, кто самостоятельно размещает инстанс n8n, для надежной работы нужны три составляющих: содержательные логи для поиска ошибок, эндпоинт healthcheck для мониторинга доступности и метрики Prometheus для более глубокого понимания очередей, вебхуков и форм. n8n уже включает все три составляющих, их нужно лишь активировать и подключить через переменные окружения. Актуально на: июль 2026.
Настройка уровня логирования и вывода логов
n8n использует библиотеку логирования winston и настраивает вывод логов согласно документации n8n по логированию через переменные окружения. Для повседневного использования достаточно двух настроек.
- N8N_LOG_LEVEL: управляет степенью детализации. От низкого к высокому доступны silent, error, warn, info и debug, значение по умолчанию info. silent не выводит ничего, debug выдает самую подробную диагностическую информацию и подходит прежде всего для целенаправленного поиска ошибок.
- N8N_LOG_OUTPUT: определяет, куда пишутся логи, console или file, также можно комбинировать как console,file. Значение по умолчанию console.
- N8N_LOG_FILE_LOCATION: путь к файлу логов, когда активен file. Значение по умолчанию <папка n8n>/logs/n8n.log.
- N8N_LOG_FILE_SIZE_MAX: максимальный размер одного файла логов в МБ, по умолчанию 16 МБ.
- N8N_LOG_FILE_COUNT_MAX: максимальное количество сохраняемых файлов логов, по умолчанию 100. При нескольких воркерах это значение стоит задавать осознанно, чтобы ротация соответствовала объему хранилища.
Для продакшена info обычно достаточно, debug остается временной мерой, поскольку он заметно увеличивает объем записываемых данных и быстрее заполняет файлы логов.
Эндпоинты healthcheck для мониторинга доступности
Согласно документации n8n по мониторингу n8n предоставляет два эндпоинта состояния, подходящих для внешних проверок доступности. Эндпоинт /healthz сообщает лишь о том, доступен ли инстанс, HTTP 200 ничего не говорит о состоянии базы данных. Эндпоинт /healthz/readiness идет дальше: он возвращает 200 только тогда, когда база данных подключена и миграции выполнены, то есть инстанс действительно готов обрабатывать запросы. Путь можно изменить через переменную N8N_ENDPOINT_HEALTH, например, если reverse proxy ожидает другой путь для проверки состояния.
На основном сервере эндпоинт состояния всегда активен. На воркер-инстансах в режиме очереди он, напротив, по умолчанию отключен и должен быть включен через QUEUE_HEALTH_CHECK_ACTIVE=true, если балансировщик нагрузки или оркестратор также должен проверять воркеры.
Экспорт метрик Prometheus
Для более детальных операционных данных n8n предоставляет эндпоинт /metrics через библиотеку prom-client. По умолчанию он отключен и активируется с помощью N8N_METRICS=true, как на main-, так и на worker-инстансах. Важно для эксплуатации: эндпоинт не должен быть публично доступен, а только для внутренних систем, потребляющих данные Prometheus, поскольку он раскрывает операционные детали инстанса.
Какие именно метрики и метки выводятся, определяют переменные N8N_METRICS_INCLUDE_*. Для конфигураций масштабирования в режиме очереди N8N_METRICS_INCLUDE_QUEUE_METRICS=true предоставляет показатели, такие как n8n_scaling_mode_queue_jobs_active, _completed, _failed и _waiting, частоту обновления можно настроить через N8N_METRICS_QUEUE_METRICS_INTERVAL. Начиная с n8n 2.28.0 можно дополнительно фиксировать время выполнения вебхуков и форм: N8N_METRICS_INCLUDE_WEBHOOK_METRICS активирует гистограмму n8n_webhook_request_duration_seconds, N8N_METRICS_INCLUDE_FORM_METRICS ее аналог n8n_form_submission_duration_seconds для отправок форм. С помощью N8N_METRICS_INCLUDE_WORKFLOW_INFO можно дополнительно активировать gauge n8n_workflow_info, который связывает ID workflow с читаемыми именами, что удобно для панелей Grafana без криптических ID.
Визуализация метрик с помощью Grafana
Когда метрики активированы, Prometheus берет на себя сбор данных через scrape job, который регулярно опрашивает путь /metrics инстанса n8n, по умолчанию n8n работает на порту 5678. Затем Grafana подключается как источник данных с адресом сервера Prometheus. Для начала работы не нужно строить дашборды с нуля: n8n публикует в GitHub-проекте n8n-observability готовые дашборды Grafana для поддерживаемых метрик, в том числе для времени выполнения вебхуков и форм.
Важно для понимания контекста: эндпоинт /metrics доступен только для self-hosted инстансов, в n8n Cloud он недоступен. Тем, кто хочет продуктивно работать с self-hosting и полным контролем над процессом, поможет n8n-консалтинг от NordFlux.
Часто задаваемые вопросы о мониторинге в n8n
Доступен ли эндпоинт /metrics в n8n Cloud?
Нет, согласно документации n8n, эндпоинт метрик Prometheus предназначен исключительно для self-hosted инстансов. Для облачных инстансов он недоступен.
Какой уровень логирования подходит для продакшена?
Значение по умолчанию info обычно дает достаточный контекст для текущей работы. debug создает заметно больше вывода и подходит прежде всего для целенаправленного и ограниченного по времени исследования конкретной проблемы.
Как отслеживать воркеры в конфигурации с режимом очереди?
Эндпоинт состояния по умолчанию отключен на воркер-инстансах в режиме очереди и должен быть включен через QUEUE_HEALTH_CHECK_ACTIVE=true. Кроме того, N8N_METRICS_INCLUDE_QUEUE_METRICS=true предоставляет показатели по активным, завершенным, неудачным и ожидающим задачам в очереди.
Обязательно ли нужна Grafana для мониторинга n8n?
Нет. Для простого мониторинга доступности достаточно эндпоинта /healthz или /healthz/readiness, который многие инструменты мониторинга могут напрямую опрашивать через HTTP-проверку. Grafana становится актуальной только тогда, когда нужно графически анализировать подробную историю, данные об очередях или задержках из эндпоинта /metrics.
NordFlux UG (haftungsbeschränkt)
NordFlux создаёт цифровых сотрудников для организаций: автоматизации и КИ-агентов, которые берут на себя повторяющуюся работу. Вы сохраняете контроль.
Конкретные вопросы по автоматизации или КИ?
В рамках бесплатного первичного анализа мы напрямую обсудим Ваш случай. Без обязательств.