Как и что можно проверять облачными сервисами? Обзор сервиса ХостТрекер. Часть 2
Все ли дело в наборе функций?
В предыдущей части обзора описывалась история сервиса, а также наиболее базовая функция — регулярная проверка сайтов и серверов и оповещения о их работоспособности. Начиная повествование о более продвинутых функциях, необходимо рассказать откуда вообще берутся идеи и как расставляются приоритеты. Один из секретов, о которых часто упоминают бизнесмены, работающие в сфере услуг, и которому будет посвящено следующие несколько строк, звучит так: «все люди уникальные». Все клиентские запросы индивидуальны, и нужно научиться с этим жить. В сфере ИТ это ощущается особенно остро: из-за большого количества незаурядных личностей и разнообразного опыта, которым они обладают. Впрочем, не редко получается придумать способ, которым удается решить проблему клиента уже имеющимися средствами. Но часто приходится что-то допиливать напильником — и в этом и кроется главная особенность подобной деятельности. Множество функций ХостТрекера были разработаны или адаптированы под нужды конкретных людей и для их удобства. В число этих людей входим и мы сами — обладая довольно большой инфраструктурой, нам тоже необходимо, чтобы все исправно работало. Поэтому мы сами являемся наиболее прихотливым клиентом.
Мелочь, а приятно
Описывая регулярные проверки, желательно сразу отметить некоторые полезные прилагаемые функции. К ним относится мониторинг срока действия домена и SSL сертификата. Такие, вроде бы, мелочи, доставляют огромные неудобства когда проявляются в неожиданное время. Эти функции появились в ХостТрекере, когда как всегда внезапно «закончился» один из наших личных доменов. Но подобные проблемы возникают даже у больших компаний, так как продление доменов/сертификатов всегда упирается в человеческий фактор, о надежности которого здесь распространятся не будем. Некоторые примеры мы собрали и описали вот здесь. Поэтому оповещение, что данный домен необходимо продлить, которое попадет не только в папку спам, где уже прописался ваш хостер благодаря непрерывному потоку маркетинговых писем, а и в папку о падениях вашего сайта (не говоря уж о возможности СМС оповещения), конечно же, является крайне полезным.
Другой интересной функцией является проверка доменов в черных списках DNSBL. Эти списки независимы и формируются каждый по своему алгоритму и созданы, главным образом, для фильтрации подозрительных субъектов. Каждый администратор может настроить свой веб-сервер, например, не получать письма от серверов, перечисленных в определенном списке. Это помогает бороться со спамом, распространением вредоносного ПО, ддос-атаками и другими проблемами. Но все эти списки имеют свои алгоритмы, и нет гарантии, что в результате случайных обстоятельств ваш сайт там не окажется. Более того, статистика показывает, что такое регулярно происходит даже с самыми безобидными сайтами. Например, никто не даст гарантию, что на соседнем с вами айпишнике не пропишется местный Король Спама, вследствие чего весь диапазон будет занесен в неблагонадежные. Во что это может выплеснуться? Письма от вас перестанут приходить клиентам, сайт станет хуже отображаться в поисковиках… Ну и так далее по нарастающей. А узнаете вы об этом, когда изменения станут критическими, а порой, увы, и необратимыми. Поэтому функция контроля и оповещения о попадании в наиболее популярные черные списки также является весьма востребованной.
Проверка контента
Вот это хороший пример того, как использование функции может превзойти все ожидания разработчиков. Ранее мы упоминали несколько подобных случаев. Дело в том, что множество вещей сейчас имеет веб-интерфейс. А для еще большего множества его можно написать без особых сложностей. Поэтому кроме основной задумки — проверки, подгрузилась ли страница целиком, путем простого парсинга, — открылись новые просторы. Подстраиваясь под разных клиентов, эта функция стала максимально универсальной: может искать сразу много слов, или же лишь одно из списка. Или наоборот — реагировать на появление определенных фраз. Также может выдавать в ошибку строку, в которой содержится ключевое слово. Например, многие делают страницу статусов: «Server 1 OK» и так далее. Если он вдруг станет «Error», тогда в сообщении придет «Server 1 Error» — вся диагностика уже проведена, можно сразу приступать к устранению.
А что, если сервер ДОЛЖЕН прилечь?
Кроме оповещений о падении сайтов, ХостТрекер выполняет еще одну важную функцию — собирает статистику по каждому проверяемому сайту. Во времена, когда различные кнопки на сайтах еще были популярными — кнопка ХостТрекера также нередко появлялась рядом с показателями посещаемости, прогнозом погоды и другими, безусловно, очень важными вещами. Сейчас же есть возможность вставить виджет, хотя кнопка тоже все еще доступна для любителей ретро. Кроме того, статистика часто является показателем для руководства: хорошо ли работает сайт и отдел его администрирования? Поэтому еще одной полезной функцией является планирование технических работ. Даже самые стабильные сайты и сервера должны время от времени обновляться или перезагружаться. И при этом не хочется терять пресловутые «девятки» в показателях аптайма. Планирование технических работ позволяет достигнуть двух целей (вместе или раздельно): не присылать оповещения об ошибках и не записывать ошибки во время определенного интервала времени в статистику. Конечно, это все равно попахивает читерством, но запланированный простой, тем более, в нерабочее для целевой аудитории время — вполне можно простить, с нашей точки зрения. Тем не менее, проверки во время технических работ все так же идут, и исправно пишутся в лог, поэтому могут быть полезными для вебмастеров и администраторов: лог позволяет определить, сколько именно длилось обновление или перезагрузка, какие ошибки при этом выдавались (то есть прослеживается весь процесс: сервер некоторое время недоступен, потом возвращает ошибку приложения, затем другую ошибку и т.д.), какие «тормоза» при этом наблюдались и тому подобное.
Технические работы можно запланировать как единоразово, так и на регулярной основе. Например, если каждую ночь делается бэкап, или каждый четверг — новый релиз. Единственное условие — расписание технических работ должно быть составлено не позже, чем за 12 часов до ближайшей приостановки сайта/сервера. Это сделано для того, чтобы на технические работы не списывались внезапно возникшие неожиданности, и статистика, предоставляемая ХостТрекером, оставалась достоверной.
Вместо эпилога
Нам часто задают вопрос (в том числе в комментариях на Хабре) —, а для чего Вы это делаете? Это же можно делать и самостоятельно. Отвечаем: да, можно. Особенно если нужно что-то одно. Но дело в том, что, грубо говоря, весь бизнес построен на человеческой лени. Облегчая людям жизнь, мы освобождаем время наших клиентов для чего-то более важного, потому как задачи, которые мы решаем — полны рутины. Ну и не стоит забывать, что не каждый способен лично собрать для себя автомобиль или вырастить хлеб. В общем, мы искренне уважаем людей, которые способны самостоятельно сделать себе хорошо в нашей сфере, но практика показывает, что далеко не все готовы тратить на это свое время.
Кроме того, нашим сервисом пользуются: не-айтишники; айтишники, которые должны что-то докладывать начальству; само начальство; любители надежности — и свое сделаю, и чужим воспользуюсь; и немало других категорий людей.
Но мы все равно очень рады читать все ваши замечания, так как на Хабре не редкость уловить что-то полезное для себя даже между строк.
Комментарии (2)
16 августа 2016 в 09:38
0↑
↓
А зачем? Если в Я.Метрике это по дефолту есть. Не так красочно конечно, приходит просто смска с упавшим сайтом без кода ошибки16 августа 2016 в 09:41
0↑
↓
Нас часто об этом спрашивают, наверно скоро отдельно напишем на эту тему :) Яндекс.Метрика подходит для многих задач, но разница есть. Там мониторинг внутренний — за счет встраиваемого в сайт скрипта. Это значит, что точность зависит от количества пользователей, оповещения приходят с задержкой (до 30 минут), ряд ошибок не замечается. Не говоря уже о дополнительных функциях. Для каждой задачи свой инструмент.