Справочник параметров конфигурации (config.yaml)
Сводная таблица параметров конфигурации, определенных в структуре pkg/config/config.go.
1. Сводная таблица параметров конфигурации
| Путь в YAML | Тип | Значение по умолчанию | Описание |
|---|---|---|---|
server.port | целое | 8080 | Основной порт HTTP / REST / WHEP / HLS веб-сервера |
server.debug | булево | false | Включение подробного отладочного логирования Gin |
server.pprof_port | целое | 0 | Порт профилировщика net/http/pprof (6060, 0 — выкл.) |
server.record_retention_days | целое | 0 | Глобальный срок хранения архива в днях (0 — без удаления) |
server.gc_percent | целое | 50 | Целевой процент сборщика мусора (GOGC, 50 для экономии RAM) |
server.gc_memory_limit_mb | целое | 0 | Мягкий лимит памяти в МБ (GOMEMLIMIT, 0 — отключен) |
server.cors_allowed_origins | []string | [] | Список разрешенных CORS-доменов (или ["*"]) |
server.hls.live_segments_in_memory | целое | 3 | Количество HLS сегментов, удерживаемых в RAM |
server.grpc.address | строка | "" | IP-адрес для привязки gRPC FrameService |
server.grpc.port | целое | 50051 | Порт gRPC FrameService (StreamFrames, PushMetadata) |
server.tls.cert_file | строка | "" | Путь к файлу TLS сертификата (PEM) |
server.tls.key_file | строка | "" | Путь к файлу приватного ключа TLS (PEM) |
server.webrtc.listen_port | целое | 8555 | Порт UDP мультиплексора WebRTC (BatchingUDPMuxConn) |
server.webrtc.nat_1_to_1_ips | []string | [] | Публичные IP-адреса для анонсирования ICE |
server.webrtc.ice_servers | []string | [] | Список адресов STUN/TURN серверов |
server.webrtc.ice_transport_policy | строка | "all" | Политика ICE ("all" или "relay") |
server.webrtc.turn_username | строка | "" | Логин для авторизации на TURN сервере |
server.webrtc.turn_password | строка | "" | Пароль для авторизации на TURN сервере |
auth.secret | строка | "" | Секретный ключ JWT HMAC-SHA256 (генерируется при старте) |
global_tags[].id | строка | — | Уникальный идентификатор тега |
global_tags[].name | строка | — | Отображаемое название тега |
global_tags[].color | строка | — | HEX-код цвета тега (например, "#3B82F6") |
cameras[].id | строка | — | Уникальный ID камеры (например, "cam-01") |
cameras[].url | строка | — | RTSP URL источника ("rtsp://user:pass@host:554/live") |
cameras[].record | булево | true | Включение постоянной записи видеоархива fMP4 |
cameras[].retention_days | целое | 0 | Индивидуальный срок хранения архива камеры в днях |
cameras[].tags | []string | [] | Список привязанных ID тегов |
cameras[].folder_id | строка | "" | ID папки для иерархической группировки |
cameras[].comment | строка | "" | Произвольные административные заметки |
cameras[].sim_phone | строка | "" | Номер телефона SIM-карты камеры |
cameras[].sim_iccid | строка | "" | Номер ICCID SIM-карты |
cameras[].lazy_hls | булево | false | Формирование HLS только при наличии активных зрителей |
cameras[].transport | строка | "tcp" | Протокол транспорта RTSP ("tcp" или "udp") |
cameras[].token_auth | булево | false | Требовать 60-секундный токен стрима для просмотра |
cameras[].traffic_limit | целое | 0 | Лимит трафика в байтах для контроля расходов |
events.webhooks[].url | строка | — | URL эндпоинта вебхука |
events.webhooks[].topics | []string | ["*"] | Фильтры топиков (["camera.*", "recording_failed"]) |
events.webhooks[].secret | строка | "" | Секретный ключ подписи HMAC в заголовке |
events.mqtt.enabled | булево | false | Включение отправки событий в брокер MQTT |
events.mqtt.broker | строка | "" | Адрес брокера MQTT ("tcp://localhost:1883") |
events.mqtt.username | строка | "" | Имя пользователя MQTT |
events.mqtt.password | строка | "" | Пароль пользователя MQTT |
events.mqtt.topic | строка | "ruseon/events" | Базовый топик для публикации |