Мониторинг работоспособности сайта 1С-Битрикс
Сайт лёг в три часа ночи. Утром менеджер открывает страницу — белый экран. Звонит разработчику. Тот подключается, находит забитый диск или упавший MySQL. Клиенты полночи видели ошибку 500. Потери — заказы, репутация, позиции в поиске. Мониторинг работоспособности решает проблему: вы узнаёте о сбое раньше клиентов.
Что именно мониторить
Работоспособность сайта — это не один показатель, а набор метрик. Каждая ловит свой тип сбоя.
HTTP-статус главной и ключевых страниц. Внешний чекер (UptimeRobot, Hetrixtools, Zabbix с внешним узлом) каждые 60 секунд делает GET-запрос и проверяет код ответа. 200 — норма, 500/502/503 — алерт. Важно проверять не только главную, но и страницу каталога, корзину, личный кабинет — они используют разные модули и могут падать независимо.
Время ответа (TTFB). Сайт отвечает, но за 8 секунд — это тоже сбой. Порог: TTFB > 2 секунд — предупреждение, > 5 секунд — критический алерт. Рост TTFB часто предшествует полному падению: база перегружена, но ещё отвечает.
Проверка контента. HTTP 200 не гарантирует, что страница рабочая. Битрикс может отдать 200 с текстом ошибки PHP или пустой шаблон. Чекер ищет ключевое слово на странице (название компании, фрагмент меню). Нет слова — алерт.
SSL-сертификат. Истечение сертификата — частая причина недоступности. Мониторинг предупреждает за 14 и 7 дней до истечения.
Домен. Аналогично — предупреждение об истечении регистрации домена.
Встроенные инструменты Битрикс
Модуль «Проверка системы» (bitrix:system.checker) — разовая диагностика, не мониторинг. Проверяет версии PHP, MySQL, настройки, права на файлы. Полезна после обновления, но не для непрерывного наблюдения.
Монитор производительности (perfmon) — записывает SQL-запросы, время выполнения страниц, нагрузку на хитах. Включается в Настройки → Производительность → Монитор. Полезен для анализа тормозов, но не отправляет алерты.
Панель производительности — оценка в баллах (до 100). Показывает узкие места: медленный диск, нехватка кэша, неоптимальные настройки MySQL. Ориентир, но не замена внешнего мониторинга.
Внешний мониторинг: настройка
Минимальная конфигурация:
| Сервис | Что проверяет | Интервал | Алерт |
|---|---|---|---|
| UptimeRobot (Free) | HTTP-статус, TTFB | 5 мин | Email, Telegram |
| Hetrixtools (Free) | HTTP + keyword | 1 мин | Email, Slack |
| Zabbix (Self-hosted) | Всё | 30 сек | Любой канал |
UptimeRobot — минимальный вариант. Бесплатный план: 50 мониторов, интервал 5 минут. Добавляем URL главной, каталога, корзины. Для каждого — проверка HTTP 200 + keyword. Уведомления — email и Telegram-бот.
Hetrixtools — расширенный вариант. Бесплатный план: 15 мониторов, интервал 1 минута, проверка из нескольких локаций. Показывает TTFB по географии.
Zabbix — для проектов с собственной инфраструктурой. Позволяет мониторить не только HTTP, но и серверные метрики (CPU, RAM, диск) в связке с доступностью сайта. Настройка сложнее, но возможности несравнимы.
Специфика Битрикс
Агенты. Система агентов Битрикс (b_agent) выполняет фоновые задачи: обмен с 1С, рассылки, очистку. Если агенты остановились (упал cron_events или нет хитов для агентов на хитах) — сайт работает, но бизнес-процессы встали. Мониторинг: проверяем дату NEXT_EXEC в b_agent — если максимальное отставание > 1 часа, значит агенты не выполняются.
Обмен с 1С. Файл /bitrix/admin/1c_exchange.php обрабатывает обмен. Если обмен завис — каталог не обновляется, но сайт работает. Мониторим по дате модификации файла обмена (/upload/1c_exchange/) или по timestamp последней записи в логе обмена.
Лицензия. Битрикс с истёкшей лицензией работает, но не обновляется и не получает патчи безопасности. Мониторинг даты окончания лицензии — через \Bitrix\Main\Config\Option::get('main', '~PARAM_MAX_SITES') или проверку файла лицензии.
Каналы уведомлений
Email — базовый канал, но письма теряются. Telegram — быстрее и заметнее. Настройка: создаём бота через @BotFather, получаем токен, добавляем бота в группу или канал. В мониторинговом сервисе указываем webhook URL Telegram API. Для UptimeRobot — встроенная интеграция в разделе Alert Contacts.
Эскалация: если алерт не подтверждён за 15 минут — звонок по телефону. Сервисы PagerDuty и Opsgenie решают задачу, но для малых проектов достаточно повторных уведомлений в Telegram с увеличивающейся частотой.







