Случается, что сайты перестают работать. Причины могут быть самые разные: в датацентре «упал» канал, сервер вырубился, кто-то что-то намудрил с базой или файлами на сервере, сисадмин неудачно обновил ПО или переносил аккаунты. Или кое-кто забыл оплатить хостинг.
В большинстве случаев такая ситуация нежелательна, а устранить ее надо как можно скорее. Для этого нужно как можно скорее узнать о случившемся. Но как? Для себя и для наших клиентов мы используем сервисы мониторинга сайтов. О них я сегодня и расскажу.
Как это работает
Принцип прост: где-то постоянно работает программа, которая периодически обращается к вашему серверу и проверяет его работу. Если что-то не так, программа оповещает вас по электронной почте или даже по SMS.
В простейшем случае программа проверяет, доступен ли сервер. Но ведь может случиться и так, что сервер доступен, а вместо главной страницы вашего интернет-магазина пользователи видят позорное «хостинг не оплачен» или «аккаунт заблокирован».
Правильные сервисы мониторинга позволяют отследить и такую ситуацию. Они могут проверять страницы сайта на наличие определенных меток. Такой меткой может быть фрагмент верстки или HTML-комментарий.
Совсем продвинутые сервисы позволяют проверять даже валидность ssl-сертификата.
По итогам недели или месяца сервис может прислать отчет. Тут-то вы и проверите заявления вашего хостера про uptime серверов.
Можно ли сделать такую штуку самому?
Конечно, можно и самому «замутить» такой скрипт, это несложно. Но у сервисов есть важное преимущество: во-первых, все вопросы с программированием, тестированием и поддержкой уже решены.
Во-вторых, если ваш скрипт физически будет расположен на одном сервере, то его работоспособность будет зависеть от работоспособности этого сервера. У специализированных сервисов таких серверов десятки.
Сколько это стоит
Базовые функции предоставляются бесплатно. За умеренную плату можно получить SMS-уведомления
Чем пользуемся мы
Basicstate.com
Этот сервис сначала пытается отрезолвить адрес сайта по DNS, затем — установить HTTP-соединение, отправляет HTTP-запрос. Потом анализирует код ответа и пытается получить страницу. Проверка — каждые 15 минут.
Сбои на разных этапах будут засчитаны как ошибки разного типа. Таким образом, можно локализовать проблему. И очень полезно в ситуациях, когда из подсети хостера «все работает», а извне — недоступно.
Сервис позволяет «повесить» на один аккаунт неограниченное количество сайтов.
Интересная фишка — множественные уведомления. Например, сразу при обнаружении проблемы сервис может записать в отчет, если сайт не работает и через 15 минут (бывает, что это просто сервер перезагружался) — уведомит вас по email и SMS, а если и через час все плохо, может и в саппорт хостеру написать.
Host-tracker.com
Большой и довольной продвинутый сервис, кстати, с русскоязычной версией. Уведомления может отправить и по ICQ, и в Gtalk (другие jabber’ы я не пробовал).
Проверка на бесплатном аккаунте — каждые 30 минут. Пишут, что у них 45 точек мониторинга. В начальный платный тариф входит проверка наличия ключевого слова на странице. Это может пригодиться, если вы хотите мониторить какой-то сервис. Пишете скрипт, который при вызове проверит работоспособность и выведет нужное слово на страницу по специальному адресу, сервис будет периодически обращаться по этому адресу и отслеживать ключевое слово.
(автор)