Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions content/documentation/admin/security/audit-logs.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ weight: 40
Аудит-логи формируются автоматически в DDP Backend с использованием промежуточного слоя обработки запросов (middleware) для всех HTTP-запросов, кроме GET.

Для снижения нагрузки на базу данных используется буферизация записей со следующими параметрами:

- Размер батча — 40 записей.
- Интервал записи — 20 секунд.
- Размер буфера в памяти — 4 записи.
Expand All @@ -45,12 +46,25 @@ weight: 40
## Просмотр логов

Аудит-логи доступны через веб-интерфейс в разделе «Администрирование» → «Аудит». Логи можно фильтровать по следующим параметрам:

- Текстовый поиск (`term`) — подстрока в полях email, IP, endpoint, method и status.
- Email пользователя.
- IP-адрес.
- Эндпоинт.
- Метод запроса.
- Статус ответа.

## Выгрузка отчёта в CSV

Пользователи с правом на чтение аудит-логов могут сохранить текущую выборку (с учётом фильтров и сортировки) в файл **CSV** прямо со страницы списка: кнопка выгрузки находится в панели действий таблицы.

1. **Право доступа** — то же глобальное разрешение, что и для просмотра списка (`read:audit-logs`). При отсутствии права кнопка отображается, но недоступна.
1. **Состав данных** — выгружаются те же записи, которые соответствуют текущим фильтрам и порядку сортировки в интерфейсе; в файл попадают все подходящие строки, а не только текущая страница таблицы.
1. **API** — `GET /api/v2/audit_logs/export`. В запросе используются те же query-параметры, что у списка (`page`, `perPage`, `sortBy`, `sortDir`, `filters[...]`), плюс опционально `report_timezone` — идентификатор часового пояса IANA (например, `Europe/Moscow`) для строки метаданных «время формирования отчёта» в начале файла. Если параметр не указан, для этой метки используется UTC.
1. **Имя файла при сохранении из браузера** — `audit_logs_ДД.ММ.ГГГГ.csv` (локальная дата на компьютере пользователя). Повторная выгрузка в тот же календарный день может привести к предложению перезаписать файл или сохранить копию с суффиксом — в зависимости от браузера и ОС.
1. **Ограничение объёма** — за один запрос можно выгрузить не более максимального числа строк, заданного в конфигурации сервера (по умолчанию 100000). Если отбор даёт больше записей, запрос завершается ошибкой валидации; уточните фильтры или обратитесь к администратору для изменения лимита.
1. **Формат файла** — текстовый CSV с разделителем поля «точка с запятой», кодировка UTF-8 с BOM, перевод строк CRLF. Перед таблицей данных выводится блок метаданных (время формирования отчёта, email запросившего пользователя, узел API, число строк, применённые фильтры в виде JSON), затем маркер начала таблицы и строки с колонками `row_number`, `email`, `ip`, `body`, `endpoint`, `method`, `status`, `timestamp` (время события в UTC в формате ISO 8601).

## Настройка

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