Перейти к основному содержимому

Синтетический мониторинг

Синтетический мониторинг: сценарии в браузере, проверки API и HTTP с 300+ локаций

Синтетический мониторинг HostTracker проверяет ваш сайт по расписанию, с 300+ локаций, той проверкой, которая подходит именно вашей задаче: сценарий в браузере, вызов API, оцениваемый по правилам, или обычный HTTP-запрос. Выберите один из вариантов ниже и получайте оповещение в момент, когда он перестаёт соответствовать ожидаемому.

  • Нам доверяют с 2004 года
  • 500 000+ отслеживаемых сайтов
  • 300+ контрольных точек по всему миру

Одна и та же схема для всех трёх: выполнить, оценить, перепроверить, оповестить

Одна система, три формы проверокСценарий в браузере, набор правил API или обычный HTTP-запрос - одно и то же расписание, одни и те же 300+ контрольных точек и одни и те же оповещения для всех трёх.
Трафик, который создаёт HostTracker, а не трафик, который появляется самКаждая проверка выполняется по вашему расписанию, а не по расписанию посетителя, так что сломанная страница обнаруживается раньше, чем её найдёт реальный посетитель - даже на сайте, где ещё нет трафика.
Оценивается по правилам, которые пишете выКаждый тип проверки оценивается по правилам - отрисованное ключевое слово, значение JSON, время отклика - а не просто по тому, ответил ли сервер вообще.

Что такое синтетический мониторинг

Синтетический мониторинг означает, что трафик создаётся намеренно. Вместо того чтобы ждать, пока настоящий посетитель столкнётся с проблемой, сервис мониторинга сам обращается к вашему сайту, по фиксированному расписанию, извне вашей сети, и сверяет полученный результат с заданными вами правилами. Инструменты синтетического мониторинга HostTracker покрывают три формы проверки - мониторинг в браузере для сценария, вызов API, оцениваемый по правилам, и обычный HTTP-запрос, - охватывая всё от полного процесса оформления заказа до одиночного запроса кода состояния, и всё это с 300+ локаций по всему миру.

Это не мониторинг реальных пользователей. HostTracker сам генерирует каждую проверку; он не собирает данные о времени отклика или ошибках из браузеров ваших настоящих посетителей. Если вам нужно знать, что испытали ваши реальные посетители, это другая дисциплина с другим названием - полное сравнение см. в статье синтетический мониторинг и мониторинг реальных пользователей. Преимущество синтетического мониторинга работает в обратную сторону: он работает ещё до того, как у вас появится хоть один посетитель, и продолжает работать в три часа ночи, когда никто не смотрит.

Какая синтетическая проверка для какой задачи

Три типа проверок отвечают на разные вопросы, и выбор не того типа - самый распространённый способ пропустить настоящую проблему. Эта таблица сопоставляет пять частых задач с проверкой, которая их действительно покрывает.

Что нужно узнать
Какая проверка
Почему
Доступен ли сайт и быстро ли отвечает
Один запрос, оцениваемый по статусу, ключевым словам и времени отклика. Самый дешёвый и быстрый сигнал - базовый уровень для любого аккаунта.
Работает ли по-прежнему оформление заказа
Только настоящий браузер способен нажать «добавить в корзину», отправить форму и пройти редирект на страницу подтверждения.
Может ли клиент по-прежнему войти в аккаунт
Вход - это последовательность действий: отправить, подождать, оказаться на странице аккаунта, - а не один ответ.
Соответствует ли API по-прежнему своему контракту
Правила-утверждения читают статус, заголовки, время отклика и тело JSON/XML/текста - одна лишь проверка кода состояния упускает неверное или отсутствующее поле.
Загружается ли сторонний виджет, не ломая страницу
Только настоящий браузер выполняет JavaScript, от которого зависит виджет, и может проверить утверждениями то, что на самом деле отрисовывается.

Большинство аккаунтов в итоге используют сразу больше одной строки этой таблицы - HTTP-проверку под всем остальным плюс проверку транзакций или API для одного-двух самых важных процессов.

Одна строка или десять шагов - язык соответствует проверке

Сценарий транзакции - это последовательность именованных действий; набор правил API - это набор утверждений над одним ответом. Оба настраиваются, а не пишутся как скрипт.

Транзакция: сценарий из пяти шагов

0  navigate  https://shop.example.com/               1.4 s
1  type      #email  "[email protected]"       0.2 s
2  click     #add-to-cart                            0.9 s
3  waitForNavigation  /checkout                     1.1 s
4  checkContent  "Order summary"  present     0.1 s

API: набор из четырёх правил

status isOk
header("Content-Type") contains "json"
body.json.path("$.count") gt 0
time lt 5s

С какой из трёх начать

Каждая отвечает на свой вопрос. Большинство аккаунтов, использующих HostTracker, в итоге запускают больше одной.

Сценарий в браузере

Докажите, что многошаговый процесс по-прежнему работает

Откройте настоящий браузер Chromium и пройдите до десяти шагов - вход, поиск, добавление в корзину, оформление заказа - а затем проверьте утверждением то, что на странице. Ловит то, что не может код состояния: удалённую кнопку, сломанную отправку формы, ошибку JavaScript посреди процесса. Мониторинг транзакций

Вызов, оцениваемый правилами

Проверьте контракт одного эндпоинта

Отправьте один HTTP-вызов и оцените ответ по до 20 правилам-утверждениям над его статусом, заголовками, временем отклика и телом в формате JSON, XML или обычного текста. Создано для эндпоинта, от которого зависит другая система. Мониторинг API

Обычный запрос

Ответьте на самый простой вопрос: работает ли сайт

Запрашивайте URL с 300+ контрольных точек в 158 городах и проверяйте статус, ключевые слова в теле, время отклика и TLS. Постоянно работающий базовый уровень, на который опираются два других типа. HTTP-мониторинг

Общее для всех трёх

Каждая синтетическая проверка получает одну и ту же инфраструктуру

Форма проверки меняется; контрольные точки, логика подтверждения и каналы оповещений за ней - нет.

Охват

300+ контрольных точек, 158 городов

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

Ложные тревоги

Подтверждается прежде, чем вас оповестят

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

Доказательства

Скриншот, а не просто вердикт

Проверка транзакций сохраняет скриншот финального шага и ещё один - в момент, когда шаг провалился, так что отладка начинается с того, как страница выглядела на самом деле.

Оценка

Правила, которые пишете вы, а не чёрный ящик

Проверяйте утверждением отрисованный текст, значение JSON, выбранное по JSONPath или XPath, или обычное ключевое слово - до 20 правил-утверждений или 10 совпадений ключевых слов на монитор, в зависимости от типа проверки.

Оповещения

Одни и те же каналы оповещений для каждой проверки

Email, SMS, голосовой звонок, Slack, Telegram и webhooks, настроенные один раз на контакт, общие для проверок транзакций, API и HTTP на вашем аккаунте.

Статус-страницы

Одна публичная статус-страница для всех трёх

Добавьте любой монитор - сценарий в браузере, вызов API или HTTP-проверку - на одну и ту же публичную статус-страницу, чтобы клиенты видели одну страницу вместо трёх отдельных.

Каждый уровень вашей инфраструктуры под наблюдением

Сайты, серверы, API, сертификаты. Один тип проверки на страницу, за всеми - те же локации, оповещения и отчёты.

Нам доверяют команды из

Microsoft Panasonic OTP Bank OneProvider Worldmate
Полное руководство

Синтетический мониторинг - подробно

Каждая глава открывается на месте, поэтому страница остаётся короткой.

Синтетический мониторинг против мониторинга реальных пользователей

Эти два подхода отвечают на разные вопросы. Синтетический мониторинг сайта создаёт собственный трафик, со своих собственных контрольных точек, по контролируемому вами расписанию - сценарий в браузере, вызов API или обычный HTTP-запрос. Мониторинг реальных пользователей вместо этого наблюдает за браузерами ваших настоящих посетителей, а значит, ему нужен реальный трафик, чтобы вообще что-то сказать, и он не может подсказать, что произойдёт завтра, - только то, что уже произошло сегодня.

HostTracker - это сервис синтетического мониторинга: он не предлагает мониторинг реальных пользователей, и эта страница не будет делать вид иначе. Что даёт синтетический мониторинг взамен: тестовый сайт без единого посетителя всё равно проверяется; сбой в три часа ночи ловится так же, как и в час пик; и поскольку сценарий детерминирован, результат называет точный шаг или правило, которое провалилось, а не смутный симптом. Полное сравнение см. в статье синтетический мониторинг и мониторинг реальных пользователей; на странице мониторинга транзакций тоже есть подробная таблица, если нужна механика.

Как часто и откуда

У каждого типа проверки свой нижний предел интервала, потому что каждая требует разного объёма работы. HTTP- запрос дёшев и может выполняться на платном тарифе так часто, как раз в минуту. Вызов API добавляет разбор и оценку правил, но всё ещё выполняется от одного раза в минуту до раза в 24 часа. Проверка транзакций открывает настоящий браузер и проходит сценарий от начала до конца, поэтому у неё нижний предел в 10 минут - браузерные проверки дороги как в выполнении, так и в получении результата, а сочетание такой проверки с быстрой HTTP-проверкой на том же сайте покрывает и вопрос «доступен ли сайт прямо сейчас», и вопрос «по-прежнему ли работает процесс», не запуская браузер каждые шестьдесят секунд.

HTTP-мониторингДо 1 мин300+ контрольных точек, 158 городов; неудачный результат перепроверяется из других локаций перед оповещением.
Мониторинг APIот 1 мин до 24 чВсе опции HTTP плюс разбор JSON, XML или обычного текста и до 20 правил-утверждений.
Мониторинг транзакцийот 10 мин до 24 чДо 10 шагов, бюджет прогона 40 секунд, настоящий браузер из пула контрольных точек Waterfall.

Все три типа позволяют выбрать, с какой из 300+ контрольных точек в 158 городах будет работать конкретный монитор - география важна больше, чем кажется, ведь CDN или балансировщик нагрузки с гео-маршрутизацией может быть исправен в одном регионе и неисправен в другом.

На что настраивать оповещения

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

Оповещения уходят по каналам, которые вы настроили для каждого контакта, - email, SMS, голосовой звонок, Slack, Telegram, webhook и другие, - один и тот же набор для всех трёх типов проверок, так что провал транзакции и провал HTTP доходят до одного и того же человека одним и тем же способом. Изменение состояния подтверждается, только когда соглашаются другие контрольные точки, так что полученное вами оповещение уже взвешено, а не основано на одном ненадёжном наблюдении; после того как проверка снова начинает проходить, приходит уведомление о восстановлении, замыкая цикл без необходимости проверять самостоятельно.

Главное

Часто задаваемые вопросы

Синтетический мониторинг - это мониторинг, при котором трафик создаётся намеренно, по расписанию, сервисом вне ваших собственных систем, а не в ожидании, пока настоящий посетитель столкнётся с проблемой и, будем надеяться, сообщит о ней. Синтетический мониторинг HostTracker представлен в трёх формах: сценарий в браузере, проходящий многошаговый путь, вызов API, оцениваемый по написанным вами правилам, и обычный HTTP-запрос, проверяемый по статусу, телу ответа и времени отклика. Все три выполняются с 300+ локаций, используют одни и те же каналы оповещений и не поднимают тревогу, пока другие контрольные точки не подтвердят сбой.

Нет. HostTracker сам генерирует трафик, со своих собственных контрольных точек, по заданному вами расписанию - он не собирает данные о времени отклика или ошибках из браузеров ваших настоящих посетителей. Если вам нужно знать, что именно испытали ваши реальные посетители, это мониторинг реальных пользователей - другая дисциплина с другим названием; полное сравнение см. в статье про синтетический мониторинг и мониторинг реальных пользователей. Преимущество синтетического мониторинга - обратное: он работает ещё до того, как у вас появится хоть один посетитель, и продолжает проверять в три часа ночи, когда никто не заходит на сайт.

Мониторинг аптайма в узком, повседневном смысле обычно означает ровно одну из этих трёх форм: обычную HTTP-проверку, которая запрашивает URL и смотрит на код состояния и время отклика. Синтетический мониторинг - более широкий термин, который также охватывает мониторинг в браузере - сценарий - и синтетический мониторинг API - вызов, оцениваемый по правилам. HTTP-проверка отвечает на вопрос «сервер на месте»; проверка транзакций отвечает на вопрос «действительно ли завершается многошаговый процесс»; синтетический мониторинг API отвечает на вопрос «действительно ли ответ соответствует своему контракту». Сайт может проходить каждую HTTP-проверку, пока его оформление заказа сломано, - и именно этот пробел закрывают две другие проверки.

Нет. Все три типа проверок настраиваются в веб-редакторе. Сценарий транзакции - это список действий - перейти, нажать, ввести текст и так далее - выбранных из меню, с CSS-селектором, введённым в поле. Правила-утверждения API-монитора - это по одной строке простого, читаемого синтаксиса каждое, а не скрипт. Ключевые слова и параметры HTTP-монитора - это поля формы. Здесь нет ничего похожего на язык программирования, хотя вся поверхность действий и правил также доступна через API, если вы хотите автоматизировать саму настройку.

До десяти написанных шагов в рамках бюджета времени в 40 секунд на весь прогон. Начальный переход на собственный URL монитора добавляется автоматически как шаг ноль, так что десять написанных вами шагов - это десять шагов настоящей работы: клики, введённый текст, проверки содержимого, а не девять шагов плюс загрузка страницы. Поток, которому действительно нужно больше десяти шагов, обычно лучше разделить на два монитора - это заодно покажет, какая именно половина сломалась.

Начните с HTTP-проверки самого сайта - это самый дешёвый сигнал и постоянно работающий базовый уровень, который должен быть у каждого аккаунта. Затем добавьте ту из двух других, которая соответствует вашему самому весомому риску: проверку транзакций, если сломанное оформление заказа или вход напрямую стоит вам денег, проверку API, если другая система - ваше собственное приложение или интеграция партнёра - зависит от того, что эндпоинт отвечает правильно. Большинство аккаунтов, использующих все три, чаще всего запускают HTTP-проверку, реже - проверку API, а проверку транзакций - с самым долгим интервалом, поскольку она требует больше всего ресурсов для выполнения.

Это зависит от типа проверки, потому что каждая требует разного объёма работы. HTTP-проверки могут выполняться на платном тарифе так часто, как раз в минуту. API-проверки выполняются от одного раза в минуту до раза в 24 часа. Проверки транзакций - поскольку каждый запуск открывает настоящий браузер и проходит сценарий от начала до конца - имеют нижний предел в 10 минут. Распространённая схема сочетает HTTP-проверку раз в минуту для быстрого обнаружения сбоя с проверкой транзакций или API каждые 10-15 минут для более глубокого вопроса.

Первому наблюдению сбоя не доверяют. HostTracker перезапускает проверку с других, независимых контрольных точек и подтверждает изменение состояния только тогда, когда достаточно из них соглашаются, - так что один ненадёжный сетевой путь или один медленный узел сам по себе не превращается в оповещение. После подтверждения HostTracker оповещает настроенные вами контакты по выбранным вами каналам - email, SMS, голосовым звонком, в Slack, Telegram, по webhook и другими способами - с той задержкой, которую выбрал каждый контакт, а после того как проверка снова начинает проходить, приходит уведомление о восстановлении.

Один пробный период, три типа проверок

Выберите подходящую синтетическую проверку и начните бесплатно

Начните бесплатный пробный период и добавьте проверку транзакций, API или HTTP на один и тот же аккаунт - одни и те же 300+ локаций и одни и те же оповещения для всех трёх.

30 дней бесплатно - 100 мониторов - без банковской карты
  • Нам доверяют с 2004 года
  • 500 000+ отслеживаемых сайтов
  • 300+ контрольных точек по всему миру

Часть инструментов мониторинга сайтов HostTracker.