Перейти к содержанию

Журналы и метрики ноды

Для контроля работы SmartBot Protection доступны три локальных источника данных: журнал программного интерфейса ноды (antibot_api), переменные журнала доступа веб-сервера (access log) и счётчики wallarm-status для систем мониторинга. Вместе с журналом «Боты» в Консоли управления они используются для анализа инцидентов и контроля работы защиты.

Журнал antibot_api

Каждое обращение к программному интерфейсу ноды фиксируется отдельной записью. Запись содержит время, тип события, Request ID, User ID, результат проверки и её причину. При достаточном уровне детализации также сохраняется тело запроса.

По Request ID запись можно сопоставить с обращением в журнале доступа и событием блокировки в Консоли управления.

Тип события Что фиксируется
register Регистрация клиента со страницы проверки: результат, причина (сигналы, CAPTCHA, подделка данных), выданный токен
analyze Результат поведенческого анализа: продление, перевыпуск или отзыв токена
token Переустановка cookie с токеном
log Клиентские логи агента
mobile_init, mobile_register, mobile_analyze Обращения мобильного контура

Журнал записывается отдельно для каждого воркера веб-сервера в каталог, заданный параметром antibot_api_logs.dir (по умолчанию /var/log/antibot_api). Ротация выполняется по размеру файла и количеству копий.

Уровень детализации задаётся параметром antibot_api_logs.level и применяется без перезапуска:

  • 0 – журнал выключен.
  • 30 (по умолчанию) – фиксируются события всех обращений с результатами и причинами, без тел запросов.
  • 70 – дополнительно сохраняются тела клиентских логов агента с ограничением объёма записи.
  • 100 – сохраняются полные тела запросов программного интерфейса.

Повышенные уровни детализации рекомендуется включать временно, на период анализа инцидентов, поскольку тела запросов содержат данные пользователей.

Параметры журнала описаны в Параметрах конфигурации ноды.

Журнал доступа (access log)

Результат проверки каждого запроса доступен в журнале доступа веб-сервера через переменную $antibot_check_result.

Переменную можно добавить в формат журнала для фиксации результата обработки запроса:

  • Пропуск запроса.
  • Показ страницы проверки.
  • Блокировка запроса.
  • Пропуск подтверждённого поискового робота, в том числе по сети.

Также включите в формат журнала Request ID. Идентификатор добавляется к событию блокировки и отображается на странице блокировки. По нему можно найти обращение в журналах ноды и сопоставить его с событием в Консоли управления.

Пример формата журнала:

log_format antibot '$remote_addr - $remote_user [$time_local] "$request" $status $request_id $antibot_check_result';

Метрики wallarm-status

Модуль агрегирует счётчики проверок и передаёт их через сервер статуса. Его конфигурация задаётся файлом wallarm-status.conf из поставки. Значения доступны по служебному адресу 127.0.0.8.

Сервер статуса необходим для работы аналитики. Не удаляйте его и не изменяйте конфигурацию.

Основные группы счётчиков:

Группа Что считается
Общие решения Запросы с включённым антиботом по результатам обработки: пропущено, заблокировано, показана страница проверки, ошибки
Проверка запроса Причины срабатываний: токен отсутствует, истёк, не расшифрован, не совпал с клиентом, блокировка по спискам User-Agent и TLS и другие
Поисковые роботы Допуски и блокировки роботов, включая пропуски по сетям CIDR
Программный интерфейс Результаты register, analyze, token и мобильного контура: блокировки по сигналам, запрос и неуспешное прохождение CAPTCHA, подделки данных

Значения счётчиков получаются по HTTP и передаются в системы мониторинга заказчика.

Те же данные в агрегированном виде доступны в Консоли управления. Подробнее – Активность ботов и Мониторинг и анализ заблокированных запросов.

Что использовать для анализа

Задача Источник
Найти обращение по Request ID Журнал доступа ($request_id, $antibot_check_result) и журнал antibot_api
Подробно разобрать блокировку Раздел «Боты» в Консоли управления, затем журнал antibot_api для просмотра причины и тела запроса
Непрерывно контролировать работу защиты Метрики wallarm-status в системе мониторинга
Проверить ответ ноды на запрос Заголовок X-Antibot-Response (LANDING – страница проверки, BLOCK – блокировка) и переменная $antibot_check_result