Сайт падает тихо. Хостинг не звонит, поисковики не жалуются, а клиенты просто видят «Сайт недоступен» и уходят к конкуренту. Узнать о проблеме раньше клиентов можно бесплатно: любая внешняя служба мониторинга раз в минуту открывает страницу и пишет в Telegram, если ответ не тот. Настроить это можно за полчаса, но важно правильно выбрать проверки и не утонуть в уведомлениях.
Подключите внешний мониторинг с проверкой HTTP-кода, ключевого слова и срока сертификата. Интервал — 1–5 минут, две точки проверки. Алерты — в отдельный Telegram-канал через бота. Настройте паузы на время работ и подтверждение падения двумя проверками подряд.
Зачем нужен внешний мониторинг, а не «сайт же открывается»
Пока вы смотрите сайт из своего города и своего провайдера, вы видите только одну точку. Проблемы бывают разные: упал процесс на сервере, кончилось место на диске, истёк SSL-сертификат, отвалился DNS, провайдер заблокировал IP, сломался плагин после обновления. Часть из них видна только снаружи и только из другой сети.
Второй аргумент — время. Средний владелец сайта узнаёт о падении из звонка клиента или из падения заявок, то есть через часы. Мониторинг с интервалом в минуту сокращает это время до 1–3 минут и даёт время поднять бэкап или написать в поддержку хостинга раньше, чем начнётся утро.
Третий — история. Логи мониторинга показывают, как часто сайт недоступен и в какие часы. Это аргумент в разговоре с хостингом, если он утверждает, что «всё в порядке».
Шаг 1. Выберите сервис
Есть два пути: облачный сервис или свой сервер. Для одного-двух сайтов почти всегда выгоднее облако — не нужно ничего поддерживать, проверки идут из разных стран, а бесплатных тарифов хватает.
Uptime Kuma. Открытый сервис, ставится на свой сервер одной командой в Docker. Даёт HTTP-проверки, пинг, порты, SSL, статус-страницу и уведомления в Telegram. Минус — сервер должен быть отдельным: если мониторинг живёт на том же сервере, что и сайт, при падении сервера вы не получите уведомление.
UptimeRobot. Облачный сервис с бесплатным тарифом: до 50 проверок с интервалом 5 минут. Настраивается за десять минут, платные тарифы дают минутный интервал.
HetrixTools, Freshping, BetterStack. Похожие варианты; смотрите на бесплатные лимиты, число точек проверки и наличие Telegram-интеграции. Некоторые бесплатные тарифы требуют публичную статус-страницу — это нормально.
Шаг 2. Настройте проверки
Начинающие проверяют только главную страницу и пингуют домен. Этого мало: сайт может отдавать 200 на главной и 500 в корзине, а DNS может работать при упавшем веб-сервере.
HTTP-код. Базовая проверка: страница должна отдавать 200. Редирект 301 на нужный адрес — тоже нормально, но проверяйте конечную страницу, а не цепочку.
Ключевое слово. Проверка, что в ответе есть фрагмент текста, например название компании в подвале. Так вы поймаете ситуацию, когда сервер отдаёт 200, но показывает белый экран, ошибку базы данных или страницу-заглушку хостинга.
SSL-сертификат. Отдельная проверка с предупреждением за 14 и 7 дней до истечения. Просроченный сертификат ломает сайт так же надёжно, как падение сервера, и часто остаётся незамеченным.
Что именно проверять. Главная, ключевая страница услуги, форма заявки (отдельно — что она отправляет), страница входа в личный кабинет, если есть. Пять проверок покрывают почти все сценарии.
Порты и пинг. Для собственного сервера полезно добавить проверку SSH и панели управления — но не делайте их публичными: проверка порта снаружи не должна открывать доступ.
Шаг 3. Подключите Telegram-алерты
Почта — плохой канал для аварий: письмо приходит в спам, на телефон — с задержкой, а ночью его никто не читает. Telegram быстрее и тише.
Через своего бота. Создайте бота у @BotFather, получите токен, создайте закрытый канал или группу и добавьте бота администратором. В сервисе мониторинга выберите тип уведомления Telegram, вставьте токен и chat_id канала. Проверка: нажмите «Test notification» — сообщение должно прийти в течение секунды.
Через готовую интеграцию. У UptimeRobot и аналогов Telegram есть в списке каналов: нужен только токен и chat_id, без вебхуков и программирования.
Через вебхук своего сервера. Если мониторинг умеет только webhook, поставьте маленький скрипт-прослойку: он принимает JSON и пересылает текст в Telegram через Bot API. Такой скрипт — 20 строк на Python — удобно совмещать с логированием аварий.
Держите алерты в отдельном канале, а не в личном чате с ботом: история падений сохраняется, её можно переслать хостингу или программисту, а звук у канала можно настроить отдельно от остальных чатов.
Шаг 4. Уберите ложные срабатывания
Первые сутки после настройки обычно приносят десяток уведомлений, и половина из них — ложные. Если оставить как есть, через неделю вы перестанете читать этот канал, и настоящее падение пройдёт незамеченным.
Подтверждение падения. Включите опцию «уведомлять только после N неудачных проверок подряд» — обычно двух-трёх. Это отсекает секундные сбои сети и перезапуски сервера.
Таймаут. Ставьте не 2 секунды, а 10–15: сайт на дешёвом хостинге может думать дольше, особенно под нагрузкой.
Окна обслуживания. Настройте расписание, в которое алерты не отправляются, — например, на время плановых работ или ночных бэкапов. Обязательно предупредите себя же в календаре, что окно включено.
Проверка из нескольких регионов. Если сервис проверяет с двух-трёх точек, включайте алерт при падении со всех: так вы не получите уведомление из-за проблем у одного провайдера.
Разные уровни. Полезно разделить: «сайт недоступен» — сразу в телефон, «сертификат истекает» — письмом или утренним дайджестом.
Шаг 5. Настройте статус-страницу и отчёт
Публичная статус-страница — необязательная, но удобная вещь: на ней видно текущее состояние и история. Клиенты и партнёры могут проверить сами, вместо того чтобы писать «у вас сайт упал». У Uptime Kuma и UptimeRobot она включается одной кнопкой и открывается по отдельному адресу.
Раз в месяц смотрите статистику: процент доступности, среднее время ответа, число инцидентов. Норма для обычного сайта — 99,9% и выше, то есть не больше 40 минут простоя в месяц. Если хуже, проблема не в мониторинге, а в хостинге или коде — и это повод менять площадку, а не настройки.
Отдельно проверьте, что отчёт о падениях приходит не только вам. Если сайтом занимается подрядчик, добавьте его в получатели алертов и пропишите в договоре время реакции — иначе мониторинг будет сообщать о проблемах в пустоту.
Что делать, когда пришёл алерт
Держите короткий чек-лист, чтобы не паниковать в три часа ночи. Первое: откройте сайт с мобильного интернета, а не с домашнего Wi-Fi — так вы сразу отсечёте проблему своего провайдера. Второе: посмотрите, отвечает ли сервер по IP и работает ли панель хостинга. Третье: проверьте, не истёк ли сертификат и не закончилось ли место на диске. Четвёртое: если сайт на CMS, включите режим обслуживания и поднимите бэкап.
Всё, что вы сделали, записывайте в тот же канал: через месяц эта переписка будет единственным источником правды о том, что и когда падало.
Итог
Минимальный рабочий набор: облачный сервис с бесплатным тарифом, три-пять проверок с ключевым словом и SSL, интервал 5 минут и алерты в отдельный Telegram-канал с подтверждением после двух неудач. Это занимает полчаса и не стоит ничего. Дальше — раз в месяц смотреть статистику и раз в квартал проверять, что уведомления действительно доходят: отключите проверку вручную и убедитесь, что сообщение пришло.
Инструмент Дня