Сервис мониторинга доступности сайтов Host-Tracker - для чего он нужен?
Опубликовано: 2016-12-14 все статьиНа сегодняшний день ХостТрекер входит в когорту лидеров на рынке компаний, которые предоставляют услуги мониторинга. Пытаясь развиваться в ногу со всеми современными ИТ тенденциями и трендами, эта компания обладает наиболее современными инструментами и функционалом. Итак, в данном обзоре вы найдете ответы на следующие вопросы: что такое мониторинг и с чем его едят, что стало причиной возникновения компании ХостТрекер, как простая идея может превратиться в реально успешный стартап, а также как не сломаться на пути становления вашего стартапа?
Как всё начиналось
Каждый день программисты по всему миру сталкиваются с проблемой неожиданного отказа в работе якобы идеально настроенных серверов (сайтов, сетей и т.п.). Они тратят кучу времени на поиск решения этой проблемы и в конце концов, эта проблема все равно может появляться периодически. Более того, она может исчезнуть, а потом неожиданно появиться снова, таким образом испортив, например, передачу проекта клиенту. Именно для решения такого рода проблем и появился ХостТрекер. Основатель проекта всегда пытался сделать свои работы уникальными и наиболее эффективными. В начале 2000 не было надежного мониторингового сервиса, поэтому приходилось что-то генерировать самому. Сначала был изобретен простенький скрипт для проверки своих сайтов. Однако он мог иногда не работать вообще, либо отрабатывать некорректно. Поэтому было решено, распределить и продублировать его на несколько машин, то есть сделать своего рода оптимизацию. А дальше, после ряда оптимизаций, мы поняли, что наш продукт может пригодиться другим, именно так ХостТрекер стал доступным для других пользователей. Мы прошли долгий путь, от простенького скрипта до мощного функционала, который помогает теперь нашим клиентам решать их проблемы.
Что же такое мониторинг?
В данной части обзора вы познакомитесь с такой популярной функцией, как функция быстрой проверки сайтов или других сетевых инструментов для своевременного выявления всех существующих проблем. Эти проверки используют различные протоколы (http(s), icmp и т.д.). Условно мониторинг делиться на внутренний и внешний. Во внутреннем главное это ПО и он оценивается именно по нём. К этому типу можно отнести Яндекс. Метрику. Яндекс. Метрика использует встроенный скрипт в страницу, который позволяет оценить количество юзеров, зашедших на сайт и сделать соответствующие выводы, используя эти данные. В свою очередь, внешний или «мониторинг третьей стороной» заключается в симуляции захода пользователями на сайт из реальных адресов и делает умозаключения на основе откликов серверов на соответствующие запросы. Подробнее о внешнем мониторинге мы поговорим далее в данной статье.
Как всё устроено
Инфраструктура состоит из двух частей: внутренней и внешней, согласно алгоритму работы сервиса мониторинга. Внутренняя размещается в облаке. В ее состав входят серверы, файловые хранилища и т.д. ХостТрекер полностью владеет и занимается поддержкой внутренней части. Внешняя, в свою очередь, состоит из агентов, это своего рода независимые инспекторы (серверы), которые осуществляют проверку серверов. Диагностика осуществляется посредством генерации стандартных запросов для выбранного протокола (например, для вебсайта это http запросы).
Эти инспекторы независимы друг от друга, а также от внутренней части. В своей работе они полагаются на работу центрального сервера, то есть принимают перечень от него сайтов для экзаменации и отдают ему, соответственно, результаты этих проверок. Большое множество серверов является собственностью наших партнеров, но частью ХостТрекер владеет самостоятельно. Чаще всего партнеры выдают доступ к своим серверам бесплатно или со значительным дискантом, в свою очередь, они ожидают отдачи с нашей стороны, то есть обратные ссылки или дисканты на наш сервис.
Алгоритм сервиса
Клиент заблаговременно определяет интервалы регулярных проверок (>= 1 мин). Когда наступает время диагностики, сервер направляет задание на один случайным образом определенный агент ХостТрекера. Он делает диагностику по выбранному протоколу и посылает обратно отклик сервера.
Если все хорошо, проблем нет - в базе будет просто лог проверок, иначе, ежели была замечена ошибка, - генерируются таски для проверки этого же сайта другими, взятыми произвольно, серверами. В этом случае, если ошибка не засвидетельствована большинством или всеми - то, действительно, вероятно, это серьезное дело, и сайт сейчас недоступен. А это уже серьезная угроза для прибыли компаний.
Обработка проблем и уведомление потребителя о них
Может происходить много плохих вещей, так как установки у каждого разные. Поэтому моментально запускается начальная проверка предмета внимания: регистрируется код имеющейся ошибки или ответ протокола. На основе этих данных делается вывод о причине проблемы (сбой сети, ошибка сервера и т.д.). Однако, первым делом, потребителю интересно существует ли вообще проблема. Именно в связи с этим существует возможность зарегистрировать свою почту, телефон или другие каналы связи, чтобы получать уведомления от ХостТрекера. Эти уведомления могут быть отосланы различным людям, на любые адреса, в любое время. Однако, для «требовательного» потребитель этого недостаточно и требуется другой подход.
Во-первых, есть «неважные» сайты и, соответственно, если на них наблюдается краткосрочный простой, не красиво будет будить админа на счет этого. Поэтому ХостТрекер позволяет подключить функцию эскалации уведомлений, которая отправляет извещения не сразу после падения, а только в том случае, если сайт не смог восстановить свою работу самостоятельно. Также пользователям предоставляется шанс точно указывать время, когда они хотят принимать эти уведомления, то есть создавать некий «рабочий график». Например, пользователь может задать рабочие годы с 8 до 19, в таком случае ему будет направляться уведомления только тогда, когда сайт будет недоступен час и более.
В следующих статьях мы познакомим вас с другим функционалом сервиса, а также с историей его разработки и возникновения, как его можно применять в современных условиях и т.п. Наш продукт ориентирован на клиента, а потому большинство функционала было разработано согласно запросам и рекомендациям клиентов и партнеров для улучшения их работы. Поэтому, не стесняйтесь, пишите, мы всегда открыты для новых идей и советов.