Конфигурация¶
Настройка может осуществляться через конфигурационный файл, аргументы командной строки или переменные окружения. Приоритет при чтении конфигурации:
- файл;
- переменные окружения;
- аргументы командной строки.
Параметры делятся на логические разделы (блоки), которые соответствуют префиксу в аргументах командной строки и переменных окружения.
server¶
Глобальные параметры сервера.
log_level¶
Уровень логирования для сервера. Возможные значения: panic
, fatal
, error
, warning
, info
, debug
).
По умолчанию info
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--log-level=info
- с помощью переменной окружения:
export YUCCA_SERVER_LOG_LEVEL=info
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
log_level = "info"
data_dir¶
Глобальный каталог для хранения состояния (в случае использования sqlite3) и данных потоков.
По умолчанию ./data
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--data-dir=/opt/yucca/data/
- с помощью переменной окружения:
export YUCCA_SERVER_DATA_DIR=/opt/yucca/data/
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
data_dir = "/opt/yucca/data/"
alloc_dir¶
Каталог с данными потоков (видео архив и прочее).
По умолчанию <data_dir>/alloc
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--alloc-dir=/opt/yucca/data/alloc/
- с помощью переменной окружения:
export YUCCA_SERVER_ALLOC_DIR=/opt/yucca/data/alloc/
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
alloc_dir = "/opt/yucca/data/alloc/"
state_dir¶
Каталог с файлом базы данных (в случае использования sqlite3).
По умолчанию <data_dir>/server
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--state-dir=/opt/yucca/data/server/
- с помощью переменной окружения:
export YUCCA_SERVER_STATE_DIR=/opt/yucca/data/server/
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
state_dir = "/opt/yucca/data/server/"
temp_dir¶
Каталог tmpfs для данных с коротким сроком хранения. (тут хранятся ротируемые для живого потока чанки)
По умолчанию /dev/shm/yucca
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--temp-dir=/dev/shm/yucca
- с помощью переменной окружения:
export YUCCA_SERVER_TEMP_DIR=/dev/shm/yucca
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
temp_dir = "/dev/shm/yucca"
alloc_dir_warning_threshold¶
Пороговый процент для предупреждения об использовании диска.
По умолчанию 80
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--alloc-dir-warning-threshold=80
- с помощью переменной окружения:
export YUCCA_SERVER_ALLOC_DIR_WARNING_THRESHOLD=80
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
alloc_dir_warning_threshold = "80"
stats_collection_interval¶
Интервал сборка статистики по ресурсам системы.
По умолчанию 1s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--stats-collection-interval=1s
- с помощью переменной окружения:
export YUCCA_SERVER_STATS_COLLECTION_INTERVAL=1s
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
stats_collection_interval = "1s"
default_language¶
Язык интерфейса по умолчанию у новых пользователей. Возможные значения: en
, ru
, uk
.
По умолчанию en
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--default-language=en
- с помощью переменной окружения:
export YUCCA_SERVER_DEFAULT_LANGUAGE=en
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
default_language = "en"
domain¶
Используется для определения поля Server при настройке получения событий по Email
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--domain=demo.yucca.app
- с помощью переменной окружения:
export YUCCA_SERVER_DOMAIN=192.168.188.15
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
domain = "demo.yucca.app"
health_check_interval¶
Интервал для проверки работоспособности зависимостей.
По умолчанию "30s"
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--health-check-interval="30s"
- с помощью переменной окружения:
export YUCCA_SERVER_HEALTH_CHECK_INTERVAL="30s"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
health_check_interval = "30s"
listen_address¶
IP адрес и порт на котором будет доступен веб интерфейс.
По умолчанию :9910
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--web.listen-address=:9910
- с помощью переменной окружения:
export YUCCA_SERVER_LISTEN_ADDRESS=:9910
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
listen_address = ":9910"
log_file¶
Путь к файлу с логами, если не указано, то stdout.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--log-file=/var/log/yucca.log
- с помощью переменной окружения:
export YUCCA_SERVER_LOG_FILE=/var/log/yucca.log
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
log_file = "/var/log/yucca.log"
self_logs¶
Просмотр логов сервера и потоков в интерфейсе во вкладке отладка.
По умолчанию true
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--self-logs=true
- с помощью переменной окружения:
export YUCCA_SERVER_SELF_LOGS=false
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
self_logs = true
log_buffer_size¶
Колличество последних сообщений в интерфейсе во вкладке отладка.
По умолчанию 50
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--log-buffer-size=50
- с помощью переменной окружения:
export YUCCA_SERVER_LOG_BUFFER_SIZE=50
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
log_buffer_size = 50
cert_file¶
Путь к файлу сертификата, в случае использования HTTPS.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--cert-file=/opt/yucca/ssl/cert.crt
- с помощью переменной окружения:
export YUCCA_SERVER_CERT_FILE=/opt/yucca/ssl/cert.crt
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
cert_file = "/opt/yucca/ssl/cert.crt"
cert_key¶
Путь к файлу ключа, в случае использования HTTPS.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--cert-key=/opt/yucca/ssl/cert.key
- с помощью переменной окружения:
export YUCCA_SERVER_CERT_KEY=/opt/yucca/ssl/cert.key
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
cert_key = "/opt/yucca/ssl/cert.key"
pprof¶
Включить профилирование.
По умолчанию false
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--pprof=true
- с помощью переменной окружения:
export YUCCA_SERVER_PPROF=true
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
pprof = true
pprof_listen_address¶
IP адрес и порт на котором будет доступен pprof профилировщик.
По умолчанию :9911
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--pprof-listen-address=":9911"
- с помощью переменной окружения:
export YUCCA_SERVER_PPROF_LISTEN_ADDRESS=":9911"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[server]
pprof_listen_address = ":9911"
validate¶
Флаг для проверки корректности конфигурации.
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--validate
Пример использования
./yucca server --config /opt/yucca/yucca.toml --validate
Valid configuration
database¶
Подключение к базе данных.
type¶
Поддерживается 2 типа баз данных для хранения состояния – sqlite3
и postgres
. В небольших инсталляциях, достаточно sqlite3
, при большом количестве потоков, мы рекомендуем использовать postgres
.
По умолчанию sqlite3
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-type=sqlite3
- с помощью переменной окружения:
export YUCCA_DATABASE_TYPE=sqlite3
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
type = "sqlite3"
path¶
Путь к файлу базы (только для sqlite3).
По умолчанию <state_dir>/state.db
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-path=/opt/yucca/server/state.db
- с помощью переменной окружения:
export YUCCA_DATABASE_PATH=/opt/yucca/server/state.db
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
path = "/opt/yucca/server/state.db"
host¶
Адрес подключения к базе (только для postgres).
По умолчанию 127.0.0.1:5432
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-host=127.0.0.1:5432
- с помощью переменной окружения:
export YUCCA_DATABASE_HOST=127.0.0.1:5432
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
host = "127.0.0.1:5432"
name¶
Название базы данных (только для postgres).
По умолчанию yucca
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-name=yucca
- с помощью переменной окружения:
export YUCCA_DATABASE_NAME=yucca
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
name = "yucca"
user¶
Имя пользователя для подключения (только для postgres).
По умолчанию postgres
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-user=postgres
- с помощью переменной окружения:
export YUCCA_DATABASE_USER=postgres
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
user = "postgres"
password¶
Пароль пользователя для подключения (только для postgres).
По умолчанию postgres
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-password=postgres
- с помощью переменной окружения:
export YUCCA_DATABASE_PASSWORD=postgres
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
password = "postgres"
ssl_mode¶
Использовать при подключении SSL (шифрованное соединение) (только для postgres). Возможные значения: disable
, require
, verify-full
).
По умолчанию disable
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-ssl-mode=disable
- с помощью переменной окружения:
export YUCCA_DATABASE_SSL_MODE=disable
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
ssl_mode = "disable"
busy_timeout¶
Тайм-аут в секундах для ожидания разблокировки таблицы SQLite (только для sqlite3).
По умолчанию 500
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-busy-timeout=500
- с помощью переменной окружения:
export YUCCA_DATABASE_BUSY_TIMEOUT=500
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
busy_timeout = 500
ca_cert_path¶
Путь к сертификату центра сертификации (CA) случае использования SSL (только для postgres).
По умолчанию /etc/ssl/certs
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-ca-cert-path=/etc/ssl/certs
- с помощью переменной окружения:
export YUCCA_DATABASE_CA_CERT_PATH=/etc/ssl/certs
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
ca_cert_path = "/etc/ssl/certs"
client_cert_path¶
Путь к файлу с сертификатом в случае использования SSL (только для postgres).
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-client-cert-path=/opt/yucca/ssl/cert.crt
- с помощью переменной окружения:
export YUCCA_DATABASE_CLIENT_CERT_PATH=/opt/yucca/ssl/cert.crt
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
client_cert_path = "/opt/yucca/ssl/cert.crt"
client_key_path¶
Путь к файлу с ключом в случае использования SSL (только для postgres).
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-client-key-path=/opt/yucca/ssl/cert.key
- с помощью переменной окружения:
export YUCCA_DATABASE_CLIENT_KEY_PATH=/opt/yucca/ssl/cert.key
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
client_key_path = "/opt/yucca/ssl/cert.key"
cache_mode¶
Параметр общего кэша, используемый для подключения к базе данных (только для sqlite3). Возможные значения: private
, shared
.
По умолчанию shared
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-cache-mode=shared
- с помощью переменной окружения:
export YUCCA_DATABASE_CACHE_MODE=shared
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
cache_mode = "shared"
conn_max_lifetime¶
Устанавливает максимальное время, в течение которого соединение может быть повторно использовано.
По умолчанию 0s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-conn-max-lifetime=0s
- с помощью переменной окружения:
export YUCCA_DATABASE_CONN_MAX_LIFETIME=0s
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
conn_max_lifetime = "0s"
log_queries¶
Логировать SQL-запросы и время выполнения.
По умолчанию false
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-log-queries=false
- с помощью переменной окружения:
export YUCCA_DATABASE_LOG_QUERIES=false
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
log_queries = false
max_open_conn¶
Максимальное количество открытых соединений с базой данных (только для postgres).
По умолчанию 0
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-max-open-conn=0
- с помощью переменной окружения:
export YUCCA_DATABASE_MAX_OPEN_CONN=0
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
max_open_conn = 0
max_idle_conn¶
Максимальное количество соединений в ожидании (только для postgres).
По умолчанию 2
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--database-max-idle-conn=2
- с помощью переменной окружения:
export YUCCA_DATABASE_MAX_IDLE_CONN=2
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[database]
max_idle_conn = 2
executor¶
Параметры запуска потоков.
type¶
Тип исполнителя для парковки потоков. Доступные значения exec
.
- Exec - сервер запускает ffmpeg и следит за его работой, в случае проблем перезапускает.
По умолчанию exec
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--executor=exec
- с помощью переменной окружения:
export YUCCA_EXECUTOR_TYPE=exec
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor]
type = "exec"
log_level¶
Уровень логирования executor. Возможные значения: panic
, fatal
, error
, warning
, info
, debug
).
По умолчанию info
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--executor-log-level=info
- с помощью переменной окружения:
export YUCCA_EXECUTOR_LOG_LEVEL=info
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor]
log_level = "info"
exec¶
Дополнительные параметры для типа exec
.
cancel_grace_period¶
Интервал ожидания завершения всех запущенных подпроцессов (ffmpeg, ffprobe, ...).
По умолчанию 5s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-cancel-grace-period=5s
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_CANCEL_GRACE_PERIOD=5s
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
cancel_grace_period = "5s"
ffmpeg_log_level¶
Уровень логирования для процессов ffmpeg.
По умолчанию error
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-ffmpeg-log-level="error"
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_LEVEL="error"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_level = "error"
ffmpeg_log_max_file¶
Максимальное количество файлов журнала, которые могут присутствовать.
По умолчанию 5
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-ffmpeg-log-max-file=5
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_FILE=5
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_file = 5
ffmpeg_log_max_size¶
Максимальное размер файла журнала перед его ротацией и сжатием.
По умолчанию "20mb"
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-ffmpeg-log-max-size"20mb"
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_SIZE"20mb"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_size ="20mb"
hls_list_size¶
Длина m3u8 HLS плейлиста.
По умолчанию 5
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-hls-list-size=5
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_HLS_LIST_SIZE=5
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
hls_list_size = 5
hls_time¶
Желаемая длина сегмента видео HLS сегметов в секундах.
По умолчанию 2
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-hls-time=2
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_HLS_TIME=5
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
hls_time = 5
preview¶
Включение создания превью изображений в фоне.
По умолчанию true
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-preview=true
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_PREVIEW=false
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
preview = true
preview_interval¶
Интервал создания превью изображений.
По умолчанию 5s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-preview-interval=5s
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_PREVIEW_INTERVAL=5s
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
preview_interval = "5s"
probe_interval¶
Интервал с который поток начинает проверяться на доступность, интервал постепенно
возрастает(дабы избежать проблемы когда частые проверки приводят к зависанию IP камеры)
до значения, заданного в probe_interval_maximum
, при этом количество попыток не должно
превышать значения probe_retries
, иначе поток перейдет в статус Failed.
По умолчанию 5s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-probe-interval="5s"
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL="5s"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval = "5s"
probe_interval_maximum¶
Смотри описание probe_interval
.
По умолчанию 1m0s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-probe-interval-maximum="1m0s"
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL_MAXIMUM="1m0s"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval_maximum = "1m0s"
probe_retries¶
Смотри описание probe_interval
.
По умолчанию 5
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-probe-retries=5
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_PROBE_RETRIES=5
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
probe_retries = 5
probe_timeout¶
Таймаут получения информации по источнику.
По умолчанию 5
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--exec-probe-timeout="1m0s"
- с помощью переменной окружения:
export YUCCA_EXECUTOR_EXEC_PROBE_TIMEOUT="1m0s"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[executor.exec]
probe_timeout = "1m0s"
cluster¶
Параметры относящиеся к настройке кластера (распределённый режим).
cluster_enabled¶
Включить режим кластера.
По умолчанию false
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--cluster=true
- с помощью переменной окружения:
export YUCCA_CLUSTER_ENABLED=true
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[cluster]
enabled = true
cluster_advertise_address¶
Адрес для рекламы другим членам кластера.
По умолчанию 127.0.0.1:9940
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--cluster-advertise-address="127.0.0.1:9940"
- с помощью переменной окружения:
export YUCCA_CLUSTER_ADVERTISE_ADDRESS=24h
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[cluster]
advertise_address = "127.0.0.1:9940"
cluster_listen_address¶
Адрес для подключения членов кластера.
По умолчанию 0.0.0.0:9940
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--cluster-listen-address="0.0.0.0:9940"
- с помощью переменной окружения:
export YUCCA_CLUSTER_LISTEN_ADDRESS="0.0.0.0:9940"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[cluster]
listen_address = "0.0.0.0:9940"
streams¶
Параметры относящиеся к поведению потоков.
archive_download_max_duration¶
Максимальная допустимая длина запрашиваемого отрезка времени для скачивания.
По умолчанию 24h
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--streams-archive-download-max-duration=24h
- с помощью переменной окружения:
export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_MAX_DURATION=24h
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[streams]
archive_download_max_duration = "24h"
archive_download_request_lifetime¶
Время жизни запрошенного для скачивания отрезка.
При скачивании промежутков архива, формируется файл запрошенной длины и в течении времени указанного в этом параметре будет доступен для скачивания. Если вы загружаете длительные отрезки при медленной скорости скачивания, рекомендуется увеличить время в данном параметре.
По умолчанию 1h0m0s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--streams-archive-download-request-lifetime=6h
- с помощью переменной окружения:
export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_REQUEST_LIFETIME=1h0m0s
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[streams]
archive_download_request_lifetime = "1h0m0s"
archive_max_depth_hours¶
Максимальная допустимая глубина для хранения архива в часах.
По умолчанию не ограничено -1
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--streams-archive-max-depth-hours=-1
- с помощью переменной окружения:
export YUCCA_STREAMS_ARCHIVE_MAX_DEPTH_HOURS=-1
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[streams]
archive_max_depth_hours = -1
live_on_demand_lease_duration¶
Время жизни аренды для живого потока по запросу (live on-demand).
Время в течении которого запрошенный live on-demand поток будет работать после последнего продления аренды, т.е. время жизни аренды после последнего её продления. Аренда продлевается при при запросе статуса о потоке на странице его просмотра. Чем меньше число тем быстрее поток перейдёт в состояние паузы после закрытия страницы просмотра.
По умолчанию 1m0s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--streams-live-on-demand-lease-duration=1m0s
- с помощью переменной окружения:
export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_DURATION=1m0s
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_duration = 1m0s
live_on_demand_lease_interval¶
Частота проверки активной аренды для живого потока по запросу (live on-demand). Параметр должен быть меньше чем live_on_demand_lease_duration.
По умолчанию 30s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--streams-live-on-demand-lease-interval=30s
- с помощью переменной окружения:
export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_INTERVAL=30s
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_interval = 30s
playlist_max_duration¶
Максимально допустимая длина запрашиваемого отрезка времени для M3U8-плейлиста.
По умолчанию 3h
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--streams-playlist-max-duration=3h
- с помощью переменной окружения:
export YUCCA_STREAMS_PLAYLIST_MAX_DURATION=3h
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[streams]
playlist_max_duration = "3h"
ranges_max_duration¶
Максимальная допустимая длина запрашиваемого отрезка времени для рейнджей (диапазон доступности архива).
По умолчанию 168h
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--streams-ranges-max-duration=168h
- с помощью переменной окружения:
export YUCCA_STREAMS_RANGES_MAX_DURATION=168h
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[streams]
ranges_max_duration = "168h"
uuid_slug¶
Использовать, в качестве публичного идентификатора потока, сгенерированный UUID.
По умолчанию false
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--streams-uuid-slug=false
- с помощью переменной окружения:
export YUCCA_STREAMS_UUID_SLUG=false
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[streams]
uuid_slug = false
branding 💰¶
💰 Доступно только в Enterprise
Брендирование интерфейса.
app_logo¶
Путь к файлу с логотипом. Можно указывать http(s) URL http://
или путь на файловой системе file://
.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--branding-app-logo=https://example.com/logo.png
- с помощью переменной окружения:
export YUCCA_BRANDING_APP_LOGO=file:///opt/yucca/logo.png
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[branding]
app_logo = "file:///opt/yucca/logo.png"
app_title¶
Текст в поле Title.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--branding-app-title=Yucca
- с помощью переменной окружения:
export YUCCA_BRANDING_APP_TITLE=Yucca
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[branding]
app_title = "Yucca"
site¶
Ссылка на ваш сайт.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--branding-site=https://yucca.app
- с помощью переменной окружения:
export YUCCA_BRANDING_SITE=https://yucca.app
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[branding]
site = "https://yucca.app"
documentation¶
Ссылка на страницу с документацией.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--branding-documentation=https://docs.yucca.app
- с помощью переменной окружения:
export YUCCA_BRANDING_DOCUMENTATION=https://docs.yucca.app
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[branding]
documentation = "https://docs.yucca.app"
fav_icon¶
Путь к файлу Favicon. Можно указывать http(s) URL http://
или путь на файловой системе file://
.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--branding-fav-icon=https://example.com/favicon.ico
- с помощью переменной окружения:
export YUCCA_BRANDING_FAV_ICON=https://example.com/favicon.ico
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[branding]
fav_icon = "file:///opt/yucca/favicon.ico"
quota 💰¶
💰 Доступно только в Enterprise
Глобальные квоты на ресурсы. Может ограничивать максимальное количество определённых ресурсов, которые можно создать/добавить в рамках инсталяции.
global_stream¶
Квота на создание потоков.
По умолчанию без ограничений -1
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--quota-global-stream=-1
- с помощью переменной окружения:
export YUCCA_QUOTA_GLOBAL_STREAM=-1
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[quota]
global_stream = -1
global_team¶
Квота на создание команд.
По умолчанию без ограничений -1
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--quota-global-team=-1
- с помощью переменной окружения:
export YUCCA_QUOTA_GLOBAL_TEAM=-1
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[quota]
global_team = -1
global_user¶
Квота на создание пользователей.
По умолчанию без ограничений -1
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--quota-global-user=-1
- с помощью переменной окружения:
export YUCCA_QUOTA_GLOBAL_USER=-1
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[quota]
global_user = -1
team_user¶
Квота на максимальное количество пользователей в команде.
По умолчанию без ограничений -1
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--quota-team-user=-1
- с помощью переменной окружения:
export YUCCA_QUOTA_TEAM_USER=-1
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[quota]
team_user = -1
cookie¶
Параметры cookie.
cookie_lifetime¶
Время жизни авторизационной сессии в cookie.
По умолчанию "720h0m0s"
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--cookie-lifetime="720h0m0s"
- с помощью переменной окружения:
export YUCCA_COOKIE_LIFETIME="720h0m0s"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[cookie]
lifetime = "720h0m0s"
security¶
Параметры безопасности.
audit_logs¶
Включить аудит лог.
По умолчанию false
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--security-audit-logs=false
- с помощью переменной окружения:
export YUCCA_SECURITY_AUDIT_LOGS=false
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[security]
audit_logs = false
brute_force_login_protection¶
Включить защиту от подбора пароля.
По умолчанию true
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--security-brute-force-login-protection=true
- с помощью переменной окружения:
export YUCCA_SECURITY_BRUTE_FORCE_LOGIN_PROTECTION=true
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[security]
brute_force_login_protection = true
one_time_code_lifetime¶
Время действия одноразового пароля для 2FA и сброса пароля
По умолчанию "12h0m0s"
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--security-one-time-code-lifetime="12h0m0s"
- с помощью переменной окружения:
export YUCCA_SECURITY_ONE_TIME_CODE_LIFETIME="12h0m0s"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[security]
one_time_code_lifetime = "12h0m0s"
security_password_length¶
Минимальная допустимая длина пароля.
По умолчанию 3
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--security-password-length=3
- с помощью переменной окружения:
export YUCCA_SECURITY_PASSWORD_LENGTH=3
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[security]
password_length = 3
security_secret_key¶
Соль для подписи секретов и паролей.
По умолчанию "random string"
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--security-secret-key="mWmPmpjFVesnXLxb6PBDcXPzyHva3c2p"
- с помощью переменной окружения:
export YUCCA_SECURITY_SECRET_KEY="mWmPmpjFVesnXLxb6PBDcXPzyHva3c2p"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[security]
secret_key = "mWmPmpjFVesnXLxb6PBDcXPzyHva3c2p"
smtp_client¶
Настройки встроенного SMTP-клиента. Отвечает за рассылку уведомлений пользователям по почте, например о том, что скоро заканчивается лицензия.
enabled¶
Включить SMTP-клиент для отправки электронных писем.
По умолчанию false
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-client=true
- с помощью переменной окружения:
export YUCCA_SMTP_CLIENT_ENABLED=true
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_client]
enabled = true
host¶
Адресс SMTP сервера.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-client-host="smtp.gmail.com:465"
- с помощью переменной окружения:
export YUCCA_SMTP_CLIENT_HOST="smtp.yandex.ru:465"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_client]
host = ""
user¶
Пользователь для авторизации на SMTP сервере.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-client-user=""
- с помощью переменной окружения:
export YUCCA_SMTP_CLIENT_USER=""
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_client]
user = ""
password¶
Пароль для авторизации на SMTP сервере.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-client-password=""
- с помощью переменной окружения:
export YUCCA_SMTP_CLIENT_PASSWORD=""
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_client]
password = ""
from_address¶
Адрес, используемый при отправке электронных писем.
По умолчанию "admin@yucca.localhost"
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-client-from-address="admin@yucca.localhost"
- с помощью переменной окружения:
export YUCCA_SMTP_CLIENT_FROM_ADDRESS="admin@yucca.localhost"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_client]
from_address = "admin@yucca.localhost"
from_name¶
Имя, используемое при отправке электронных писем.
По умолчанию "Yucca"
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-client-from-name="Yucca"
- с помощью переменной окружения:
export YUCCA_SMTP_CLIENT_FROM_NAME="Yucca"
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_client]
from_name = "Yucca"
cert_path¶
Путь к файлу с сертификатом.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-client-cert-path=""
- с помощью переменной окружения:
export YUCCA_SMTP_CLIENT_CERT_PATH=""
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_client]
cert_path = ""
key_path¶
Путь к файлу с ключём.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-client-key-path=""
- с помощью переменной окружения:
export YUCCA_SMTP_CLIENT_KEY_PATH=""
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_client]
key_path = ""
skip_verify¶
Проверять SSL сертификат SMTP сервера.
По умолчанию false
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-client-skip-verify=""
- с помощью переменной окружения:
export YUCCA_SMTP_CLIENT_SKIP_VERIFY=""
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_client]
skip_verify = ""
smtp_server¶
Настройки встроенного SMTP-сервера.
enabled¶
Включить встроенный SMTP-сервер для получения события от камер.
По умолчанию true
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-server=true
- с помощью переменной окружения:
export YUCCA_SMTP_SERVER_ENABLED=true
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_server]
enabled = true
listen_address¶
Адрес, на котором будет работать SMTP-сервер.
По умолчанию :1025
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-server-listen-address=:1025
- с помощью переменной окружения:
export YUCCA_SMTP_SERVER_LISTEN_ADDRESS=:1025
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_server]
listen_address = ":1025"
password¶
Пароль для подключения к SMTP-серверу.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-server-password=admin
- с помощью переменной окружения:
export YUCCA_SMTP_SERVER_PASSWORD=admin
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_server]
password = "admin"
username¶
Логин для подключения к SMTP-серверу.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-server-username=admin
- с помощью переменной окружения:
export YUCCA_SMTP_SERVER_USERNAME=admin
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_server]
username = "admin"
read_timeout¶
Таймаут чтения входящего сообщения.
По умолчанию 1s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-server-read-timeout=1s
- с помощью переменной окружения:
export YUCCA_SMTP_SERVER_READ_TIMEOUT=1s
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_server]
read_timeout = "1s"
event_window_duration¶
Длина нового события, детекции движения.
По умолчанию 40s
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--smtp-server-event-window-duration=40s
- с помощью переменной окружения:
export YUCCA_SMTP_SERVER_EVENT_WINDOW_DURATION=40s
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[smtp_server]
event_window_duration = "40s"
telemetry¶
Телеметрия.
enabled¶
Включить предоставление метрик в формате Prometheus.
По умолчанию true
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--telemetry=true
- с помощью переменной окружения:
export YUCCA_TELEMETRY_ENABLED=true
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[telemetry]
enabled = true
listen_address¶
IP адрес и порт на котором будет доступена телеметрия.
По умолчанию :9912
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--telemetry-listen-address=:9912
- с помощью переменной окружения:
export YUCCA_TELEMETRY_LISTEN_ADDRESS=:9912
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[telemetry]
listen_address = ":9912"
path¶
URI для доступа к телеметрии.
По умолчанию /metrics
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--telemetry-path=/metrics
- с помощью переменной окружения:
export YUCCA_TELEMETRY_PATH=/metrics
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[telemetry]
path = "/metrics"
basic_auth_username¶
Логин базовой авторизации для доступа к телеметрии.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--telemetry-basic-auth-username=admin
- с помощью переменной окружения:
export YUCCA_TELEMETRY_BASIC_AUTH_USERNAME=admin
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_username = "admin"
basic_auth_password¶
Пароль базовой авторизации для доступа к телеметрии.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--telemetry-basic-auth-password=admin
- с помощью переменной окружения:
export YUCCA_TELEMETRY_BASIC_AUTH_PASSWORD=admin
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_password = "admin"
environment_info¶
Лейблы для метрики yucca_environment_info
.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--telemetry-environment-info=env:test
- с помощью переменной окружения:
export YUCCA_TELEMETRY_ENVIRONMENT_INFO=env:test
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[telemetry.environment_info]
env = "test"
analytics¶
Сбор аналитики.
yandex_metrika_counter_id¶
Yandex.Metrika Counter ID. Включено, если определено.
По умолчанию не определено ""
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--analytics-yandex-metrika-counter-id=12345678
- с помощью переменной окружения:
export YUCCA_ANALYTICS_YANDEX_METRIKA_COUNTER_ID=12345678
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_counter_id = 12345678
yandex_metrika_webvisor¶
Включает вебвизор, подробные записи активности пользователей на сайте: движение мыши, прокрутка и клики.
По умолчанию false
Значение можно определить одним из способов:
- с помощью аргумента запуска:
--analytics-yandex-metrika-webvisor=true
- с помощью переменной окружения:
export YUCCA_ANALYTICS_YANDEX_METRIKA_WEBVISOR=true
- с помощью конфигурационного файла:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_webvisor = true