add admin data mutations and load check
Some checks failed
ci / test (pull_request) Has been cancelled
Some checks failed
ci / test (pull_request) Has been cancelled
This commit is contained in:
22
ADMIN.md
22
ADMIN.md
@@ -60,6 +60,8 @@ Data Explorer:
|
||||
|
||||
- `GET /api/admin/data/sources`
|
||||
- `POST /api/admin/data/query`
|
||||
- `PATCH /api/admin/data/{source}/{id}`
|
||||
- `DELETE /api/admin/data/{source}/{id}`
|
||||
- `POST /api/admin/data/export`
|
||||
|
||||
Users:
|
||||
@@ -115,6 +117,16 @@ Data Explorer работает только по whitelist источников
|
||||
|
||||
Поддержаны фильтры по дате, статусу, пользователю, Telegram ID, авто, СТО, городу, роли, категории, сумме, ошибкам и текстовому поиску. Каждый запрос ограничен `limit` до 500 строк и пишет audit log.
|
||||
|
||||
Редактирование и удаление из Data Explorer:
|
||||
|
||||
- доступно только `admin` и `super_admin`;
|
||||
- работает только по whitelist полей, который возвращает `GET /api/admin/data/sources`;
|
||||
- требует `reason` минимум 5 символов;
|
||||
- пишет `AuditLog` с old/new values;
|
||||
- для пользователей, СТО, заявок, записей и уведомлений используется soft-delete/status change;
|
||||
- hard-delete разрешен только для ограниченных журналов записей, где это явно включено;
|
||||
- удаление автомобиля требует `super_admin`.
|
||||
|
||||
## Privacy
|
||||
|
||||
По умолчанию маскируются Telegram ID, VIN, госномер, телефон и регистрационные данные СТО.
|
||||
@@ -169,3 +181,13 @@ API дополнительно проверяет роль пользовате
|
||||
- проверяет `/health`, `/ready`, `/metrics`, `/admin.html`, `/sto.html`, `/work_order.html`.
|
||||
|
||||
Утилита `scripts/send_telegram_report.py` берет получателей из `ADMIN_NOTIFICATION_CHAT_ID`, `ADMIN_TELEGRAM_IDS` и, если env пустой, из пользователей БД с ролями `admin`, `super_admin`, `moderator`, `support`.
|
||||
|
||||
## Load Check
|
||||
|
||||
Быстрая проверка одновременных соединений:
|
||||
|
||||
```bash
|
||||
python scripts/load_check.py --base-url http://127.0.0.1:8000 --requests 200 --concurrency 25
|
||||
```
|
||||
|
||||
Скрипт проверяет `/health`, `/ready`, `/`, `/admin.html`, `/sto.html`, считает RPS, avg/p95/max latency и завершится с ошибкой при 5xx или сетевых сбоях.
|
||||
|
||||
Reference in New Issue
Block a user