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

Параметры qf-analytics

Сервис настраивается переменными окружения. Принципы работы, API и экспорт описаны в руководстве по аналитике.

В Helm-чарте несекретные значения задаются в env, а строки подключения — в secrets.sourceDSN и secrets.enrichDSN. Оба значения попадают в Kubernetes Secret, а не в Deployment.

Источник данных

КлючДефолтНазначение
ANALYTICS_SOURCEpostgresИсточник: postgres или opensearch. Для PostgreSQL строка подключения определяет primary или read-only replica.
ANALYTICS_SOURCE_DSNСтрока подключения. Для PostgreSQL — pgx DSN (postgres://ro_user:***@host:5432/qf). Для OpenSearch — базовый URL (https://user:***@host[:port][/prefix]). Путь в URL считается префиксом reverse proxy, а не именем индекса. Учётной записи достаточно прав на чтение.
ANALYTICS_SOURCE_INDEXqf-events*Индекс или шаблон индексов OpenSearch. Используется только с ANALYTICS_SOURCE=opensearch.
ANALYTICS_ENRICH_DSNPostgreSQL DSN с правами чтения для сопоставления идентификаторов правил с именами правил и политик при источнике OpenSearch. Без него отчёт показывает rule_id, не строит срез по политикам и не поддерживает фильтры по именам правил и политик. Для источника PostgreSQL не нужен.

Аутентификация и доступ

КлючДефолтНазначение
ANALYTICS_JWKS_URLОбязательно. JWKS Control Plane (https://<cp>/.well-known/jwks.json) для проверки RS256 access-токенов. Известный ключ кэшируется на 24 часа; документ JWKS обновляется не чаще раза в 30 секунд. Без URL сервис не стартует.
ANALYTICS_ROLESadminРоли Control Plane с доступом к отчётам, через запятую. Можно добавить auditor. Для остальных ролей API возвращает 403.

Сеть

КлючДефолтНазначение
ANALYTICS_HTTP_ADDR:8090Адрес HTTP-сервера: REST API /api/*, интерфейс /app/, /healthz и /version.

Поиск аномалий в PostgreSQL

Пороги встроенной эвристики действуют только при ANALYTICS_SOURCE=postgres. Источник OpenSearch вычисляет аномалии своими серверными агрегациями.

КлючДефолтНазначение
ANALYTICS_ANOMALY_SPIKE_MULT3Множитель всплеска: интервал deny отмечается при count > mult × медиана.
ANALYTICS_ANOMALY_MIN_COUNT100Минимальное число событий во всплеске.
ANALYTICS_ANOMALY_MIN_BUCKETS3Минимальное число временных интервалов для анализа.

Ограничения источника

КлючДефолтНазначение
ANALYTICS_SOURCE_HTTP_TIMEOUT_SECONDS30Тайм-аут одного запроса _search к OpenSearch, в секундах.
ANALYTICS_PG_MAX_WINDOW_HOURS0 — без ограниченияМаксимальный период отчёта для PostgreSQL, в часах. Превышение возвращает 422. Для OpenSearch не действует.

Развёртывание

Публикация по пути /analytics и установка Helm описаны в руководстве по развёртыванию.