Пользовательские события
Как включить логирование случаев, когда метрика отклонилась от нормы, и получать о них уведомления.
Что это
Пользовательские события — инструмент, который следит за метриками вашего ресурса. Если метрика вышла за указанный порог, система фиксирует событие.
Пример. Для ресурса example.ru вы задали условие: порог ошибок 503 от сервера-источника — 10 в секунду. Ошибок стало больше, и система записала начало события. Позже частота снизилась до 10 в секунду — система записала окончание. Так вы узнаете, когда и как долго сервер был недоступен.
Когда пригодятся
Например, инструмент поможет отследить:
-
резкий рост или падение входящего трафика;
-
рост запросов от ботов;
-
увеличение времени ответа вашего сервера-источника;
-
всплеск ошибок 5xx на сервере-источнике;
-
любые другие изменения метрик.
Как работают
-
Вы создаёте триггер — правило для мониторинга трафика. В нём указываете ресурс, метрику и её пороговое значение.
-
Система следит за метрикой и сравнивает её значение с порогом.
-
Как только метрика выходит за заданный порог, система фиксирует начало события.
-
Как только метрика приходит в норму, система фиксирует окончание события.
Каждый такой случай записывается в журнал событий. Там видно, когда событие началось, когда закончилось и на каком значении сработал триггер.
Если настроили уведомления, система пришлёт вам сообщение при начале события и ещё одно — при завершении.
Где находятся пользовательские события в UI
Перейдите в раздел Защита приложений → Пользовательские события. Здесь вы увидите две вкладки:
-
События— журнал всех событий, которые зафиксировала система. Используйте его, чтобы посмотреть, какие отклонения метрик были на ваших ресурсах, когда они начались и когда завершились. -
Триггеры— список всех созданных вами триггеров. Здесь вы можете создать новый триггер или управлять настройками существующих.
Как работать с каждой вкладкой — в разделах ниже.
Триггеры
Как создать
-
На вкладке
Триггерынажмите+ Создать триггер. Откроется окно для добавления триггера, все дальнейшие шаги выполняйте в нём.
-
Выберите Ресурс, метрику которого нужно отслеживать.
-
Выберите Тип метрики — группу показателей, за которыми хотите следить. Например:
Коды ответа ориджина. -
Выберите Метрику — конкретный показатель, который будет отслеживать триггер. Например: можно выбрать метрику
2xx,3xx,4xxили5xx.Полный список метрик и их описание вы найдёте ниже. Кликните на заголовок, чтобы раскрыть его.
Описание метрикТип метрики Описание и доступные варианты Пропускная способность
Объём разных видов трафика.
Доступные метрики:
-
Blocked— трафик, который был заблокирован в ходе фильтрации. -
Passed— трафик, который прошёл фильтрацию и был передан на ваши серверы-источники. -
Inbound— весь входящий трафик, который получила система защиты. -
Outbound— исходящий трафик от ваших серверов-источников к клиентам.
Действия с запросами
Число запросов, которые система защиты обработала по разным сценариям.
Доступные метрики:
-
Blocked— запросы, заблокированные по политикам фильтрации. -
Cookie Challenge— запросы, в ответ на которые система защиты выдала клиенту cookie-челлендж. -
JS Challenge— запросы, в ответ на которые система защиты выдала клиенту JS-челлендж. -
CAPTCHA Challenge— запросы, в ответ на которые система защиты выдала клиенту CAPTCHA. -
Passed— запросы, переданные на серверы-источники. -
Redirected (301)— запросы, в ответ на которые система защиты вернула HTTP-код 301, например, для перенаправления с HTTP на HTTPS. -
Bad Request (400)— запросы, в ответ на которые система защиты вернула HTTP-код 400 из-за некорректного формата запроса или нарушения протокола.
CAPTCHA-челлендж статистика
Число запросов, связанных с прохождением CAPTCHA.
Доступные метрики:
-
Allowed— запросы от клиентов, которые уже недавно правильно решили капчу (такие запросы пропускаются к вашим серверам-источникам); -
Issued— запросы, в ответ на которые клиенту была выдана CAPTCHA; -
Solved— запросы, в ответ на которые клиенту была выдана CAPTCHA, и клиент её правильно решил.
Коды ответа платформы
Число запросов, в ответ на которые система защиты вернула HTTP-код конкретного типа.
Доступные метрики:
-
2xx— ответы с кодами 2xx (успешно). -
3xx— ответы с кодами 3xx (редирект). -
4xx— ответы с кодами 4xx (ошибка клиента). -
5xx— ответы с кодами 5xx (ошибка сервера).
Время обработки запросов
Число запросов, сгруппированных по общему времени обработки — от момента, когда система защиты получила запрос, до момента, когда она отправила ответ клиенту.
Доступные метрики:
-
> 10 sec -
3-10 sec -
1-3 sec -
0.3-1 sec -
< 0.3 sec
Время ответа ориджина
Число запросов, сгруппированных по времени ответа сервера-источника — от момента, когда система защиты отправила запрос на сервер-источник, до момента, когда она получила ответ.
Доступные метрики:
-
> 10 sec -
3-10 sec -
1-3 sec -
0.3-1 sec -
< 0.3 sec
Классификация запросов
Число запросов от разных типов клиентов.
Доступные метрики:
-
Blacklisted— запросы от клиентов из чёрного списка. -
Bot— запросы от ботов. -
Likely Bot— запросы, которые система с высокой вероятностью определила как бот-трафик. -
Likely Human— запросы, которые система с высокой вероятностью определила как трафик от человека. -
Human— запросы от людей. -
Verified Bot— запросы от верифицированных ботов, например, поисковых систем. -
Whitelisted— запросы от клиентов из белого списка.
5xx ошибки ориджина
Число запросов, в ответ на которые сервер-источник вернул конкретную ошибку 5xx.
Доступные метрики:
-
500— непредвиденная ошибка на стороне сервера. -
501— метод запроса не поддерживается сервером и не может быть обработан. -
502— сервер вернул некорректный ответ. -
503— сервер временно недоступен, например из-за перегрузки или технического обслуживания. -
504— сервер не успел получить ответ от внутреннего сервиса за отведённое время.
Коды ответа ориджина
Число запросов по HTTP-кодам, которые вернул сервер-источник.
Доступные метрики:
-
2xx— ответы с кодами 2xx (успешно). -
3xx— ответы с кодами 3xx (редирект). -
4xx— ответы с кодами 4xx (ошибка клиента). -
5xx— ответы с кодами 5xx (ошибка сервера).
-
-
Выберите Единицу измерения, в которой система будет считать значение метрики. Например:
-
Kbit/s— килобиты в секунду; -
Mbit/s— мегабиты в секунду; -
rpm— запросы в минуту; -
rps— запросы в секунду.
В зависимости от метрики набор единиц измерения может отличаться.
-
-
Выберите Условие, при котором система должна зафиксировать событие:
more than(больше чем) илиless than(меньше чем).Система сравнивает текущее значение метрики с заданным порогом и фиксирует событие, когда выбранное условие выполняется.
Пример: вы выбрали
more thanи указали значение100. Система зафиксирует событие, когда значение метрики станет 101 и выше. -
Укажите Порог — число, с которым система будет сравнивать текущее значение метрики. При превышении порога зафиксирует начало события.
Это должно быть целое число больше нуля: без дробной части, букв, пробелов и специальных символов.
-
Нажмите
Создать. Триггер появится в списке и начнёт отслеживать выбранную метрику.Также автоматически откроется окно Расписание триггера, где вы можете задать дополнительную настройку: изменение порога в зависимости от дня недели и времени. Подробнее читайте ниже.
Расписание триггера
Расписание — инструмент, который меняет порог триггера в зависимости от дня недели и времени. Например, если задать:
-
порог триггера — 100 запросов в секунду;
-
расписание: пн-пт с 09:00 до 18:00 порог — 500 запросов в секунду.
То с понедельника по пятницу с 09:00 до 18:00 порог будет 500 запросов в секунду, а всё остальное время — 100 запросов.
Инструмент пригодится, если нагрузка на ваш ресурс неравномерна: например, в рабочее время трафика много, а в остальное мало. С помощью расписания вы сделаете значение порога динамическим и будете получать события только при реальных аномалиях метрик.
|
Если для триггера настроено хотя бы одно правило расписания, в его строке на вкладке
|
Чтобы добавить расписание к уже созданному триггеру:
-
На вкладке
Триггерынажмите на многоточие (…) рядом с нужным триггером и выберитеНастроить расписание.
-
В открывшемся окне нажмите
+ Добавить правило. Откроются настройки правила расписания, дальнейшие шаги выполняйте там.
-
Выберите Дни, в которые должно действовать правило. Можно выбрать один или несколько дней.
-
Укажите время начала и окончания действия правила.
Время задаётся в часовом поясе операционной системы вашего устройства.
Если правило должно действовать до следующего дня, выберите только день, когда оно начинается. Например, для периода с 22:00 понедельника до 02:00 вторника выберите
Пни задайте время22:00–02:00. Вторник выбирать не нужно.Для одного триггера нельзя создать несколько правил, которые полностью или частично пересекаются по времени. Например, если на понедельник уже настроено правило
09:00–14:00, добавить правило12:00–18:00не получится, потому что их интервалы пересекаются с 12:00 до 14:00. -
Задайте Порог, который будет действовать в выбранные дни и время. Условие и единица измерения остаются такими же, как у основного порога триггера.
-
Кликните в любом месте за пределами поля. Система сохранит правило автоматически — рядом с ним появится ID.
После создания правила можно изменить только его порог. Чтобы изменить дни или время, удалите правило с помощью значка корзины и создайте новое.
Рекомендации по настройке
-
Начните с метрик, изменения которых действительно важны для вашего ресурса. Не создавайте триггеры на все показатели сразу: чем меньше триггеров, тем понятнее, что означает каждое срабатывание. Например, если для вас критична доступность сайта, начните с типа
5xx ошибки ориджина. -
Перед созданием триггера посмотрите, какие значения метрика принимает при обычной нагрузке. Для этого используйте разделы Обзор (дашборд), Аналитика и Статистика по трафику. Так вам будет проще выбрать подходящий порог.
-
Не ставьте порог слишком близко к обычным значениям. Иначе триггер будет срабатывать на обычных колебаниях, а в журнале появится много однотипных событий.
-
Если нагрузка на ресурс меняется в зависимости от времени суток или дня недели, используйте основной порог для обычного режима работы, а для периодов с повышенной или пониженной нагрузкой — расписание триггера.
-
Периодически сверяйте порог со свежей статистикой. Обычные значения метрик со временем меняются, поэтому старые настройки могут перестать подходить. Если триггер перестал срабатывать или, наоборот, срабатывает постоянно — скорректируйте значение.
Как управлять
На вкладке Триггеры вы увидите список всех созданных триггеров. Управлять ими можно прямо из списка:
-
Включить/выключить: используйте переключатель в столбце
Статус. Зелёный цвет значит, что триггер включён и система фиксирует по нему события, серый — что он выключен. -
Редактировать: в строке нужного триггера выберите другую единицу измерения или введите новое значение в поле
Порог. Нажмите вне поля, чтобы сохранить изменения. -
Настроить расписание: нажмите на многоточие (
…) в конце строки и выберитеНастроить расписание. В открывшемся окне вы сможете создать новое правило с отдельным порогом для выбранных дней и времени или изменить порог существующего правила. -
Удалить: нажмите на многоточие (
…), выберитеУдалить триггери подтвердите удаление. Вместе с триггером удалятся все его правила расписания.
События
Здесь вы найдёте журнал всех событий, зафиксированных при срабатывании триггеров. По нему видно, какие метрики и как часто выходят за заданные границы и сколько времени держится отклонение. По каждому событию в таблице указаны:
-
идентификатор события;
-
дата и время начала события;
-
дата и время окончания события;
-
ресурс, для которого зафиксировано событие;
-
тип отслеживаемой метрики;
-
показатель, по которому сработал триггер;
-
пороговое значение, заданное в триггере;
-
пиковое значение метрики за время события.
Кликните иконку графика в строке события, чтобы посмотреть, как менялось значение метрики во время события. График доступен в двух шкалах: линейной и логарифмической. Логарифмическая помогает разглядеть детали, когда значения метрик различаются в десятки и сотни раз.
|
Если событие идёт в реальном времени (статус |
По умолчанию в журнале отображаются события по всем ресурсам и типам метрик за последние 30 дней. Эти настройки можно изменить:
-
Период. Нажмите
Последние 30 днейи выберите нужный диапазон или задайте свой. -
Фильтры по ресурсам и типам метрик. Нажмите
Все ресурсыилиВсе типы метрики выберите из списка нужный вариант. Откроется список событий, соответствующий вашим фильтрам. -
Автообновление. Кликните 🔄 и установите частоту автообновления данных: выключена, 10/30 секунд, 1/5/15/30 минут или 1 час.
Уведомления о пользовательских событиях
Включите уведомления, чтобы получать сообщения о событиях: первое придёт, когда система зафиксирует отклонение метрики, второе — когда метрика вернётся в норму.
-
Откройте настройки аккаунта.
-
Перейдите на вкладку
Подписка на уведомления. -
В подписке укажите получателей и способ доставки: имейл, Telegram или Webhook.
-
(Опционально) по умолчанию вы будете получать уведомления по всем триггерам. Если интересуют только конкретные триггеры, укажите их ID — уведомления будут приходить только по ним.
|
ID триггеров можно найти в списке на вкладке |
Подробная инструкция по настройке — в статье Подписки на уведомления.