Моніторинг работоздатності сайту 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 з зростаючою частотою.







