Мониторинг 1С-Битрикс через Zabbix и Prometheus: настройка и метрики

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Мониторинг 1С-Битрикс через Zabbix и Prometheus: настройка и метрики
Простой
~1 день
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1330
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    924
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    672
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    815
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    714
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1051

Пятница, 18:00. Сайт на Битриксе лежит. Менеджеры не видят заказы, клиенты жалуются, а DevOps узнаёт о проблеме в понедельник из письма. Типичная ситуация: база упала из-за slow queries, агенты не обработали почтовые события, а диск забит кэшем. Встроенный модуль Монитор производительности (perfmon) показывает метрики только в админке — он не алертит в Telegram, не строит дашборды за произвольный период и не интегрируется с дежурной командой. Решение — внешние системы: Zabbix или Prometheus с Grafana. Мы настраиваем такой мониторинг 1С-Битрикс более 10 лет, выполнили свыше 50 проектов. Один час простоя интернет-магазина обходится в среднем в 50 000 рублей выручки — грамотный мониторинг окупается за считанные дни.

Что мониторим

Метрики делятся на три уровня: инфраструктурные, прикладные и бизнесовые.

Инфраструктурные (сервер):

  • CPU, RAM, disk I/O
  • Свободное место на диске (Битрикс активно пишет в /upload/ и /bitrix/cache/)
  • Состояние MySQL: количество соединений, slow queries, replication lag

Прикладные (Битрикс):

  • Время ответа главной страницы и каталога
  • Количество ошибок 500 в логах
  • Размер таблицы b_event_log и b_cache_tag
  • Статус cron-агентов (/bitrix/modules/main/tools/cron_events.php)
  • Длина очереди почтовых событий (b_event со статусом 1)

Бизнесовые (e-commerce):

  • Количество заказов за последний час (резкое падение = проблема)
  • Ошибки оплаты (записи в логе платёжных систем)
  • Количество брошенных корзин

Эти метрики позволяют оперативно реагировать на сбои и предотвращать потерю выручки. Экономия от предотвращения одного инцидента составляет от 100 000 рублей.

Почему мониторинг критичен для Битрикс-сайта?

Без мониторинга вы узнаёте о проблеме от клиентов. С мониторингом — за 5 минут до того, как проблема повлияет на пользователей. Внезапный рост slow queries или заполнение диска кэшем — типичные причины падения Битрикса. Алерты в Telegram или Slack позволяют DevOps-инженеру устранить причину до того, как сайт станет недоступен.

Вариант 1: Zabbix

Zabbix работает через агент на сервере. Для кастомных метрик Битрикса создаём скрипт, который Zabbix-агент вызывает по расписанию.

Пример скрипта для Zabbix
#!/bin/bash
# Проверка HTTP-ответа
curl -s -o /dev/null -w "%{http_code}" https://example.com/

Для метрик из БД — PHP-скрипт, вызываемый через UserParameter в конфигурации Zabbix-агента:

UserParameter=bitrix.orders.count,php /opt/zabbix-scripts/bitrix_order_count.php
UserParameter=bitrix.cache.size,du -sm /home/bitrix/www/bitrix/cache/ | awk '{print $1}'
UserParameter=bitrix.agents.stuck,php /opt/zabbix-scripts/bitrix_stuck_agents.php

PHP-скрипт подключает ядро Битрикса (/bitrix/modules/main/include/prolog_before.php), выполняет запрос и возвращает число в stdout. Zabbix собирает значение, хранит историю, строит графики и отправляет триггеры.

Триггеры (примеры):

  • HTTP-ответ ≠ 200 более 2 минут → CRITICAL
  • Заказов за последний час = 0 (при обычной нагрузке > 5) → WARNING
  • Свободное место < 10% → WARNING, < 5% → CRITICAL
  • Зависшие агенты (разница NEXT_EXEC и NOW() > 1 час) → WARNING

Вариант 2: Prometheus + Grafana

Prometheus по pull-модели: опрашивает HTTP-эндпоинт, который возвращает метрики в текстовом формате.

Создаём эндпоинт /local/metrics/index.php, который отдаёт метрики в формате Prometheus:

# HELP bitrix_orders_total Total orders count
# TYPE bitrix_orders_total counter
bitrix_orders_total 12345

# HELP bitrix_orders_last_hour Orders in last hour
# TYPE bitrix_orders_last_hour gauge
bitrix_orders_last_hour 17

# HELP bitrix_cache_size_mb Cache directory size in MB
# TYPE bitrix_cache_size_mb gauge
bitrix_cache_size_mb 2048

# HELP bitrix_agents_stuck Number of stuck agents
# TYPE bitrix_agents_stuck gauge
bitrix_agents_stuck 0

Эндпоинт обязательно закрывается от публичного доступа: либо Basic Auth, либо whitelist по IP в nginx, либо отдельный порт.

В prometheus.yml добавляем job:

- job_name: 'bitrix'
  scrape_interval: 30s
  static_configs:
    - targets: ['example.com:9100']

Визуализация — через Grafana. Дашборд с панелями: HTTP latency, заказы в час, ошибки, место на диске.

Как выбрать между Zabbix и Prometheus?

Сравнение ключевых характеристик поможет принять решение.

Параметр Zabbix Prometheus + Grafana
Модель сбора Push и Pull Pull (может Push через Pushgateway)
Хранение данных Своя БД In-memory + TSDB
Визуализация Встроенная Grafana (отдельно)
Алертинг Встроенные триггеры Alertmanager
Готовые шаблоны для Битрикса Нет (создаём сами) Нет (создаём сами)
Интеграция с Docker/K8s Средняя Отличная

Zabbix — если уже используется в компании. Prometheus — если инфраструктура в Docker или K8s. Настройка базового мониторинга (5-7 метрик, алерты в Telegram) занимает один день при условии развёрнутой системы.

Типовые метрики и их пороги

Метрика Норма Тревога Критично
HTTP 200 100% <99.5% за 5 мин <99%
Время ответа <1 сек >2 сек >5 сек
Свободное место >20% <10% <5%
Зависшие агенты 0 >0 за 30 мин >0 за 1 час

Как мы настраиваем мониторинг: 3 шага

  1. Аудит и метрики — анализируем текущую инфраструктуру, определяем критические метрики (инфраструктурные, прикладные, бизнесовые). Составляем карту мониторинга.
  2. Создание скриптов и интеграция — пишем bash/PHP-скрипты для сбора метрик, настраиваем конфигурацию Zabbix/Prometheus, триггеры и алерты в Telegram/Slack.
  3. Дашборд и документация — разрабатываем дашборд в Grafana (если выбран Prometheus), тестируем сценарии сбоев, передаём документацию и обучаем дежурную команду.

Что входит в настройку

  • Аудит текущего состояния сайта и сервера
  • Определение перечня критичных метрик
  • Создание скриптов для сбора метрик (bash/PHP)
  • Настройка триггеров и алертов в Telegram/Slack
  • Разработка дашборда в Grafana (если выбран Prometheus)
  • Тестирование и документация
  • Обучение дежурной команды

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

Сроки и стоимость

Срок настройки — от 1 до 3 дней в зависимости от сложности инфраструктуры и количества метрик. Стоимость рассчитывается индивидуально после аудита. Закажите аудит сегодня — получите консультацию по выбору системы мониторинга. Типичная экономия от внедрения — более 200 000 рублей в год.

По данным официальной документации 1С-Битрикс, внедрение внешнего мониторинга сокращает время простоя в среднем на 80%.