Пользовательские события
Как включить логирование случаев, когда метрика отклонилась от нормы, и получать о них уведомления.
Что это
Пользовательские события — инструмент, который следит за метриками вашего ресурса. Если метрика вышла за указанный порог, система фиксирует событие.
Пример. Для ресурса 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 и выше. -
Укажите пороговое значение — число, с которым система будет сравнивать текущее значение метрики. Это должно быть целое число больше нуля: без дробной части, букв, пробелов и специальных символов.
-
Нажмите
Добавить.
Готово! Триггер появится в списке и начнёт отслеживать выбранную метрику.
Рекомендации по настройке
-
Начните с метрик, изменения которых действительно важны для вашего ресурса. Не создавайте триггеры на все показатели сразу: чем меньше триггеров, тем понятнее, что означает каждое срабатывание. Например, если для вас критична доступность сайта, начните с типа
5xx ошибки ориджина. -
Перед созданием триггера посмотрите, какие значения метрика принимает при обычной нагрузке. Для этого используйте разделы Обзор (дашборд), Аналитика и Статистика по трафику. Так вам будет проще выбрать подходящий порог.
-
Не ставьте порог слишком близко к обычным значениям. Иначе триггер будет срабатывать на обычных колебаниях, а в журнале появится много однотипных событий.
-
Периодически сверяйте порог со свежей статистикой. Обычные значения метрик со временем меняются, поэтому старые настройки могут перестать подходить. Если триггер перестал срабатывать или, наоборот, срабатывает постоянно — скорректируйте значение.
Как управлять
На вкладке Триггеры вы увидите список всех созданных триггеров. Управлять ими можно прямо из списка:
-
Редактировать: в строке нужного триггера выберите другую единицу измерения в выпадающем списке или введите новое число в поле со значением. Новые настройки применятся сразу.
-
Удалить: нажмите на иконку мусорной корзины в строке триггера и подтвердите удаление.
События
Здесь вы найдёте журнал всех событий, зафиксированных при срабатывании триггеров. По нему видно, какие метрики и как часто выходят за заданные границы и сколько времени держится отклонение. По каждому событию в таблице указаны:
-
идентификатор события;
-
дата и время начала события;
-
дата и время окончания события;
-
ресурс, для которого зафиксировано событие;
-
тип отслеживаемой метрики;
-
показатель, по которому сработал триггер;
-
пороговое значение, заданное в триггере;
-
пиковое значение метрики за время события.
Кликните иконку графика в строке события, чтобы посмотреть, как менялось значение метрики во время события. График доступен в двух шкалах: линейной и логарифмической. Логарифмическая помогает разглядеть детали, когда значения метрик различаются в десятки и сотни раз.
|
Если событие идёт в реальном времени (статус |
По умолчанию в журнале отображаются события по всем ресурсам и типам метрик за последние 30 дней. Эти настройки можно изменить:
-
Период. Нажмите
Последние 30 днейи выберите нужный диапазон или задайте свой. -
Фильтры по ресурсам и типам метрик. Нажмите
Все ресурсыилиВсе типы метрики выберите из списка нужный вариант. Откроется список событий, соответствующий вашим фильтрам. -
Автообновление. Кликните 🔄 и установите частоту автообновления данных: выключена, 10/30 секунд, 1/5/15/30 минут или 1 час.
Уведомления о пользовательских событиях
Включите уведомления, чтобы получать сообщения о событиях: первое придёт, когда система зафиксирует отклонение метрики, второе — когда метрика вернётся в норму.
-
Откройте настройки аккаунта.
-
Перейдите на вкладку
Подписки на уведомления. -
В подписке укажите получателей и способ доставки: имейл, Telegram или Webhook.
-
(Опционально) по умолчанию вы будете получать уведомления по всем триггерам. Если интересуют только конкретные триггеры, укажите их ID — уведомления будут приходить только по ним.
|
ID триггеров можно найти в списке на вкладке |
Подробная инструкция по настройке — в статье Подписки на уведомления.