10 мин чтения Скорость, безопасность, хостинг

Мониторинг доступности сайта: как узнать о падении раньше клиентов

мониторинг сайтов
Содержание10

Мониторинг доступности сайта — это внешняя проверка, которая регулярно запрашивает ключевые страницы и сразу сообщает, если сервер не ответил, ответил ошибкой или слишком медленно. Без него о падении узнают от клиентов или из просевшей статистики. Минимальный набор — код ответа и время ответа главной и страниц с заявками, срок SSL-сертификата и домена, уведомление ответственному человеку.

Что такое мониторинг доступности сайта

Мониторинг доступности — сервис или скрипт, который со стороны, как обычный посетитель, по расписанию открывает страницы сайта. Если ответа нет, пришёл код ошибки или нет нужного текста, он отправляет уведомление на почту, по SMS или в мессенджер.

Главное слово здесь «со стороны». Сайт может работать на сервере, но быть недоступен посетителям: истёк домен, сломались DNS-записи, просрочен сертификат, защита хостинга режет часть запросов. Проверка изнутри сервера этого не увидит, внешняя — увидит.

Цена простоя — не только потерянные заявки. Яндекс в справке Вебмастера предупреждает: если поисковому роботу не удалось подключиться к сайту из-за ошибки сервера, сайт может полностью пропасть из поиска. Чем раньше вы узнаете о сбое, тем меньше шанс, что робот придёт в неудачный момент.

Мониторинг доступности нужен, чтобы о падении сайта первым узнали вы, а не клиент и не поисковый робот.

Что проверять в мониторинге сайтов

«Сайт открывается» — слишком грубая проверка. Полезный мониторинг смотрит на несколько признаков сразу.

  • Код ответа сервера — ключевые страницы должны отвечать 200. Коды 5xx значат сбой сервера, 403 — сработавшую защиту, 404 — пропавшую страницу.
  • Время ответа — медленный ответ часто предвещает падение. Яндекс фиксирует ошибку, если страницы загружаются дольше 3 секунд.
  • Контрольный текст — фраза, которая есть только на рабочей странице: название компании в шапке, кнопка «В корзину». Защищает от белой страницы с кодом 200.
  • SSL-сертификат — срок действия. Просроченный сертификат браузер показывает как угрозу, и посетитель уходит.
  • Домен — дата окончания регистрации. Неоплаченный домен выключает сайт, почту и формы разом.
  • DNS — что домен указывает на ваш сервер. Ошибка в записях выглядит для посетителя как «сайт не существует».

Для интернет-магазина к этому списку добавляют сценарии: открыть карточку, положить товар в корзину, дойти до оформления. Одна главная страница не скажет, что сломалась оплата.

Почему проверки «сайт открывается» мало?

Сайт бывает «живым» для владельца и мёртвым для всех остальных. Вот частые случаи, которые простая проверка пропускает.

Белая страница с кодом 200. CMS упала после обновления плагина, но сервер отдаёт пустой ответ с успешным кодом. Проверка кода говорит «всё хорошо», а посетитель видит пустоту. Спасает только контрольный текст.

Блокировка части посетителей. Защита хостинга режет запросы из других стран, сетей или от роботов. Яндекс называет это среди причин, по которым главная страница возвращает ошибку: система безопасности хостинга блокирует робота Яндекса. Владелец открывает сайт без проблем, а страницы выпадают из поиска.

Кэш браузера и CDN. Вы видите сохранённую копию, а сервер уже не отвечает. Поэтому проверять нужно с чужих адресов и без кэша.

Мнение. Если на сайте есть корзина или форма заявки, проверяйте не только главную, но и страницу с этой формой. Падение одного модуля главная страница не покажет.

Как работает внешняя проверка

Сервис мониторинга отправляет запросы к сайту с заданным интервалом из одной или нескольких точек. На каждый запрос он записывает код ответа, время ответа и, если настроено, ищет контрольный текст.

Три настройки отличают полезный мониторинг от шумного:

  1. Несколько точек проверки

    Если сайт не ответил из одного региона, а из двух других ответил, это проблема сети, а не сайта. Сбой из всех точек — настоящий.

  2. Повторная проверка перед тревогой

    Разовый обрыв соединения бывает у любого сервера. Уведомление стоит отправлять после подтверждения, иначе к тревогам быстро привыкают и перестают их читать.

  3. Уведомление о восстановлении

    Сообщение «сайт снова работает» с длительностью простоя помогает понять масштаб и разобрать инцидент.

Интервал проверки выбирают по цене простоя. Для визитки хватит редких проверок, для магазина с рекламой интервал делают короче. Чем чаще проверка, тем раньше тревога, но и тем больше ложных срабатываний без повторной проверки.

Что умеет Яндекс Вебмастер?

Яндекс Вебмастер не заменяет мониторинг доступности, но показывает то, чего внешний сервис не видит: как сайт отвечает поисковому роботу.

В разделе «Индексирование» -> «Мониторинг важных страниц» можно указать до 100 адресов одного сайта. Для каждого Вебмастер показывает дату последнего обхода роботом и ответ сервера, полученный при этом. История хранит до 100 изменений по каждому адресу.

На эти страницы стоит подписаться: в настройках уведомлений есть тема «Изменение кода страницы» — сообщение приходит, когда робот посетил страницу и код ответа изменился. Ещё одна полезная тема — «Ошибки на сайте»: она срабатывает, когда при очередной проверке сайта выявлены проблемы, например недоступность главной или ошибка DNS.

Факт. Мониторинг важных страниц в Яндекс Вебмастере отслеживает до 100 адресов одного сайта и показывает ответ сервера при последнем обходе роботом.

Ограничение честное: Вебмастер узнаёт о сбое, только когда робот приходит на страницу. Как часто это происходит, решает робот, а не ваше расписание. Как добавить сайт и какие отчёты смотреть, разобрано в статье про Яндекс Вебмастер.

Что покажут Search Console и Метрика

В Google Search Console есть отчёт «Статистика сканирования», а в нём — статус хоста. Он показывает, были ли проблемы с доступностью сайта для робота Google за последние 90 дней. Статус складывается из трёх частей: доступность файла robots.txt, преобразование DNS и подключение к хосту.

Справка Google оговаривает, что отчёт рассчитан на опытных пользователей: если на сайте меньше тысячи страниц, он не нужен. Для небольшого сайта полезнее внешний мониторинг.

В Яндекс Метрике есть группа отчётов «Мониторинг»: нагрузка на сайт, трафик по минутам, время загрузки страниц. Резкий провал посещаемости до нуля в отчёте по минутам — повод проверить сайт. Но справка предупреждает, что для полноценного мониторинга нужно больше 100 просмотров страниц в неделю: на маленьком сайте провал просто не отличить от тихого часа.

Обе системы смотрят назад: они помогают разобрать сбой, а не сообщить о нём в момент падения.

Мониторинг на сервере и хостинге

Внешняя проверка говорит, что сайт упал. Внутренний мониторинг объясняет почему: кончилась память, диск или процессы.

  • Журналы сервера — журнал ошибок и журнал доступа nginx или Apache. По ним восстанавливают, что случилось перед падением.
  • Состояние веб-сервера — в nginx модуль stub_status даёт базовую информацию о состоянии сервера: число активных соединений, принятых и обработанных запросов. По умолчанию модуль не собирается, его включают при сборке.
  • Ресурсы сервера — процессор, память, место на диске. В справочнике кодов Яндекс Вебмастера к ошибке нехватки места прямо сказано: настройте мониторинг свободного места и автоматическое оповещение при достижении критических значений.
  • Графики хостинга — на виртуальном хостинге в панели обычно видны нагрузка и упоры в лимиты тарифа.

Если тариф постоянно упирается в лимиты, мониторинг будет сообщать о сбоях снова и снова. Как читать тариф и его скрытые ограничения, разобрано в статье про хостинг для сайта.

Как настроить мониторинг доступности по шагам

Настройка занимает один подход, если заранее решить, что проверять и кто реагирует.

  1. Составьте список адресов

    Главная, страница каталога или услуги, страница с формой заявки, корзина и оформление заказа для магазина.

  2. Выберите контрольный текст

    Для каждой страницы — фразу, которая пропадёт при поломке.

  3. Задайте условия тревоги

    Код ответа не 200, нет контрольного текста, время ответа выше порога, сбой подтверждён повторной проверкой.

  4. Добавьте сертификат и домен

    Напоминание заранее, до окончания срока, а не в день отключения.

  5. Назначьте ответственного

    Уведомление получает тот, кто может починить или знает, кому звонить, и запасной человек.

  6. Подключите Вебмастер

    Добавьте те же адреса в «Мониторинг важных страниц» и включите уведомления об изменении кода.

  7. Проверьте тревогу

    На тестовой копии или в согласованное время отключите страницу и убедитесь, что уведомление пришло.

Где ошибаются: ставят проверку только на главную, отправляют тревоги на общий ящик, который никто не читает, и не проверяют, работают ли уведомления вообще.

Что делать, когда пришло уведомление о сбое?

Уведомление — начало работы, а не её конец. Порядок действий такой:

  1. Подтвердите сбой

    Откройте сайт с телефона через мобильный интернет и выполните curl -I https://site.ru/.

  2. Посмотрите код ответа

    5xx — сбой сервера или приложения, смотрите журналы. 403 — защита или права. 404 — пропала страница. Нет ответа — DNS, домен или сервер целиком.

  3. Проверьте домен и сертификат

    Не истёк ли срок, не изменились ли DNS-записи.

  4. Сообщите команде

    Отделу продаж и рекламе — что сайт недоступен, чтобы не тратить бюджет на клики в никуда.

  5. Запишите итог

    Причина, длительность, что сделали. Через несколько сбоев станет видно, что ломается чаще всего.

Если с пропавшими страницами всё понятно, а 404 на сайте вспыхнули после выкладки, разбор есть в статье про ошибку 404. Когда некому реагировать на тревоги круглосуточно, мониторинг и разбор сбоев можно передать на техподдержку сайта.

Источники

Частые вопросы

Можно ли обойтись Яндекс Вебмастером вместо мониторинга?

Нет. Вебмастер видит сайт только во время обхода роботом и сообщает об изменениях с опозданием. Для тревоги в момент падения нужна внешняя проверка по расписанию.

Нужен ли мониторинг сайту-визитке?

Нужен в упрощённом виде: проверка главной и страницы контактов, срок домена и сертификата. Визитка падает реже магазина, но истёкший домен выключает её так же.

Почему мониторинг пишет «сайт недоступен», а у меня всё открывается?

Возможно, сбой виден только из части сетей или регионов, сработала защита хостинга против адресов сервиса мониторинга либо у вас открыта сохранённая копия. Сверьте результаты из разных точек проверки и журнал доступа сервера.

Поделиться
ВКонтакте Telegram MAX
Рубрика статьи
Скорость, безопасность, хостинг
Ещё 28 статей в рубрике →
Рядом в разделе

Расскажите о задаче — посчитаем смету

Ответьте на несколько вопросов: что за компания, какие разделы нужны, есть ли тексты и фотографии. Этого хватит, чтобы посчитать смету с фиксированной ценой и сроком — она бесплатна и ни к чему не обязывает.
Написать