Skip to content

REST API: Системная телеметрия, ИИ-модели и резервное копирование ​

Системный API предоставляет данные о состоянии ядра, расходе оперативной памяти, стриминге логов, раздаче моделей нейросетей и утилитах бэкапа.


1. Системная статистика (GET /api/stats) ​

Возвращает память рантайма Go, число горутин, количество активных потоков и общий FPS:

  • Требуемая роль: viewer, operator или admin
bash
curl -H "Authorization: Bearer <TOKEN>" http://localhost:8080/api/stats

Ответ (200 OK):

json
{
  "version": "1.0.0",
  "uptime_sec": 172800,
  "uptime": "48h0m0s",
  "memory_alloc_mb": 140.5,
  "total_alloc_mb": 2500.2,
  "sys_memory_mb": 2224.0,
  "num_gc": 7903,
  "goroutines": 2448,
  "active_streams": 600,
  "total_cameras": 600,
  "total_fps": 18139.0,
  "total_bitrate_kbps": 1339900,
  "active_recordings": 600
}

2. Стриминг логов в реальном времени (GET /api/logs/stream) ​

Стриминг логов в формате JSON через Server-Sent Events (SSE):

  • Требуемая роль: operator или admin
bash
curl -N -H "Authorization: Bearer <ADMIN_TOKEN>" http://localhost:8080/api/logs/stream

3. Резервное копирование и восстановление базы данных ​

3.1 Экспорт снимка (GET /api/system/backup/export) ​

Выгрузка полного JSON-снапшота со всеми камерами, тегами, папками и пользователями:

  • Требуемая роль: admin
bash
curl -H "Authorization: Bearer <ADMIN_TOKEN>" \
  http://localhost:8080/api/system/backup/export > ruseon_backup_$(date +%Y%m%d).json

3.2 Восстановление снимка (POST /api/system/backup/import) ​

Восстановление базы данных из JSON-файла:

bash
curl -X POST http://localhost:8080/api/system/backup/import \
  -H "Authorization: Bearer <ADMIN_TOKEN>" \
  -H "Content-Type: application/json" \
  -d @ruseon_backup_20260823.json

Ответ (200 OK): {"message": "backup restored successfully"}.


4. Хаб доставки моделей нейросетей (GET /models/:filename) ​

Раздача файлов весов ONNX (например, yolo11n.onnx, yolo11s.onnx, yolo11m.onnx) с локальным дисковым кешированием в data/models/ и дедупликацией singleflight:

bash
curl -O http://localhost:8080/models/yolo11s.onnx

Связанная документация ​

Released under the MIT License.