Configuration¶
Configuration can be done via a configuration file, command-line arguments, or environment variables. Priority when reading the configuration:
- file;
- environment variables;
- command line arguments.
Parameters are divided into logical sections (blocks) that correspond to the prefix in the command-line arguments and environment variables.
server¶
Global server settings.
log_level¶
The logging level for server. Possible values: panic
, fatal
, error
, warning
, info
, debug
).
Default is info
The value can be determined in one of the following ways:
- using the startup argument:
--log-level=info
- using the environment variable:
export YUCCA_SERVER_LOG_LEVEL=info
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
log_level = "info"
data_dir¶
A global directory for storing state (in the case of sqlite3) and stream data.
Default is ./data
The value can be determined in one of the following ways:
- using the launch argument:
--data-dir=/opt/yucca/data/
- using the environment variable:
export YUCCA_SERVER_DATA_DIR=/opt/yucca/data/
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
data_dir = "/opt/yucca/data/"
alloc_dir¶
Directory with stream data (video archive, etc.).
Default is <data_dir>/alloc
The value can be determined in one of the following ways:
- using the launch argument:
--alloc-dir=/opt/yucca/data/alloc/
- using the environment variable:
export YUCCA_SERVER_ALLOC_DIR=/opt/yucca/data/alloc/
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
alloc_dir = "/opt/yucca/data/alloc/"
state_dir¶
The directory with the database file (in the case of using sqlite3).
Default is <data_dir>/server
The value can be determined in one of the following ways:
- using the startup argument:
--state-dir=/opt/yucca/data/server/
- using the environment variable:
export YUCCA_SERVER_STATE_DIR=/opt/yucca/data/server/
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
state_dir = "/opt/yucca/data/server/"
temp_dir¶
The directory used to store data with short retention. (chunks rotated for the live stream are stored here)
Default is /dev/shm/yucca
The value can be determined in one of the following ways:
- using the startup argument:
--temp-dir=/dev/shm/yucca
- using the environment variable:
export YUCCA_SERVER_TEMP_DIR=/dev/shm/yucca
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
temp_dir = "/dev/shm/yucca"
alloc_dir_warning_threshold¶
Threshold percent for disk usage warning.
Default is /dev/shm/yucca
The value can be determined in one of the following ways:
- using the startup argument:
--alloc-dir-warning-threshold=80
- using the environment variable:
export YUCCA_SERVER_ALLOC_DIR_WARNING_THRESHOLD=80
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
alloc_dir_warning_threshold = "80"
stats_collection_interval¶
Interval for collecting statistics on system resources.
Default is 1s
The value can be determined in one of the following ways:
- using the run argument:
--stats-collection-interval=1s
- using the environment variable:
export YUCCA_SERVER_STATS_COLLECTION_INTERVAL=1s
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
stats_collection_interval = "1s"
default_language¶
The default interface language for new users. Possible values: en
, ru
, uk
.
Default, en
The value can be determined in one of the following ways:
- using the launch argument:
--default-language=en
- using the environment variable:
export YUCCA_SERVER_DEFAULT_LANGUAGE=en
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
default_language = "en"
domain¶
Used to define the Server field when configuring Event receive by Email
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--domain=demo.yucca.app
- using the environment variable:
export YUCCA_SERVER_DOMAIN=192.168.188.15
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
domain = "demo.yucca.app"
health_check_interval¶
Interval for dependency health checking.
Default is 30s
The value can be determined in one of the following ways:
- using the launch argument:
--health-check-interval="30s"
- using the environment variable:
export YUCCA_SERVER_HEALTH_CHECK_INTERVAL="30s"
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
health_check_interval = "30s"
listen_address¶
The IP address and port on which the web interface will be available.
Default is :9910
The value can be determined in one of the following ways:
- using the launch argument:
--web.listen-address=0.0.0.0:9910
- using the environment variable:
export YUCCA_SERVER_LISTEN_ADDRESS=0.0.0.0:9910
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
listen_address = ":9910"
log_file¶
The path to the log file, if not specified, then stdout.
Default undefined ""
The value can be determined in one of the ways:
- using the startup argument:
--log-file=/var/log/yucca.log
- using the environment variable:
export YUCCA_SERVER_LOG_FILE=/var/log/yucca.log
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
log_file = "/var/log/yucca.log"
self_logs¶
View server logs and streams in the interface in the debug tab.
Default is true
The value can be determined in one of the following ways:
- using the startup argument:
--self-logs=true
- using the environment variable:
export YUCCA_SERVER_SELF_LOGS=false
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
self_logs = true
log_buffer_size¶
The number of recent messages in the interface is in the debug tab.
Default is 50
The value can be determined in one of the ways:
- using the startup argument:
--log-buffer-size=50
- using the environment variable:
export YUCCA_SERVER_LOG_BUFFER_SIZE=50
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
log_buffer_size = 50
password¶
Password for connecting to the SMTP server.
Default undefined ""
The value can be determined in one of the following ways:
- using the startup argument:
--smtp-server-password=admin
- using the environment variable:
export YUCCA_SMTP_SERVER_PASSWORD=admin
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
password = "admin"
cert_file¶
The path to the certificate file, if HTTPS is used.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--cert-file=/opt/yucca/ssl/cert.crt
- using the environment variable:
export YUCCA_SERVER_CERT_FILE=/opt/yucca/ssl/cert.crt
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
cert_file = "/opt/yucca/ssl/cert.crt"
cert_key¶
The path to the key file, if HTTPS is used.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--cert-key=/opt/yucca/ssl/cert.key
- using the environment variable:
export YUCCA_SERVER_CERT_KEY=/opt/yucca/ssl/cert.key
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
cert_key = "/opt/yucca/ssl/cert.key"
pprof¶
Enable profiling.
Default is true
The value can be determined in one of the following ways:
- using the launch argument:
--pprof=true
- using the environment variable:
export YUCCA_SERVER_PPROF=true
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
pprof = true
pprof_listen_address¶
Address on which to expose pprof profiling.
Default is :9911
The value can be determined in one of the following ways:
- using the launch argument:
--pprof-listen-address=":9911"
- using the environment variable:
export YUCCA_SERVER_PPROF_LISTEN_ADDRESS=":9911"
- using the configuration file:
# /opt/yucca/yucca.toml
[server]
pprof_listen_address = ":9911"
validate¶
Flag for validate configuration.
The value can be determined in one of the following ways:
- with launch argument:
--validate
Usage example
./yucca server --config /opt/yucca/yucca.toml --validate
Valid configuration
database¶
Connecting to the database.
type¶
There are 2 types of databases for storing state – sqlite3
and postgres
. In small installations, sqlite3
is sufficient, and with a large number of streams, we recommend using postgres
.
Default is sqlite3
The value can be determined in one of the following ways:
- using the run argument:
--database-type=sqlite3
- using the environment variable:
export YUCCA_DATABASE_TYPE=sqlite3
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
type = "sqlite3"
path¶
The path to the database file (only for sqlite3).
Default undefined ""
The value can be determined in one of the following ways:
- using the startup argument:
--database-path=/opt/yucca/server/state.db
- using the environment variable:
export YUCCA_DATABASE_PATH=/opt/yucca/server/state.db
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
path = "/opt/yucca/server/state.db"
host¶
The address of the database connection (only for postgres).
Default is 127.0.0.1:5432
The value can be determined in one of the following ways:
- using the startup argument:
--database-host=127.0.0.1:5432
- using the environment variable:
export YUCCA_DATABASE_HOST=127.0.0.1:5432
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
host = "127.0.0.1:5432"
name¶
Name of the database (only for postgres).
Default is yucca
The value can be determined in one of the following ways:
- using the launch argument:
--database-name=yucca
- using the environment variable:
export YUCCA_DATABASE_NAME=yucca
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
name = "yucca"
user¶
The name of the user to connect to (postgres only).
Default is postgres
The value can be determined in one of the following ways:
- using the launch argument:
--database-user=postgres
- using the environment variable:
export YUCCA_DATABASE_USER=postgres
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
user = "postgres"
password¶
The user's password for the connection (only for postgres).
Default is postgres
The value can be determined in one of the following ways:
- using the startup argument:
--database-password=postgres
- using the environment variable:
export YUCCA_DATABASE_PASSWORD=postgres
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
password = "postgres"
ssl_mode¶
Use SSL (encrypted connection) when connecting (only for postgres). Possible values: disable
, require
,verify-full
).
Default is disable
The value can be determined in one of the following ways:
- using the startup argument:
--database-ssl-mode=disable
- using the environment variable:
export YUCCA_DATABASE_SSL_MODE=disable
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
ssl_mode = "disable"
busy_timeout¶
Timeout in seconds to wait for the SQLite table to be unlocked (only for sqlite3).
Default is 500
The value can be determined in one of the following ways:
- using the startup argument:
--database-busy-timeout=500
- using the environment variable:
export YUCCA_DATABASE_BUSY_TIMEOUT=500
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
busy_timeout = 500
ca_cert_path¶
The path to the certificate authority (CA) certificate if SSL is used (only for postgres).
Default is /etc/ssl/certs
The value can be determined in one of the following ways:
- using the startup argument:
--database-ca-cert-path=/etc/ssl/certs
- using the environment variable:
export YUCCA_DATABASE_CA_CERT_PATH=/etc/ssl/certs
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
ca_cert_path = "/etc/ssl/certs"
client_cert_path¶
The path to the file with the certificate in the case of using SSL (only for postgres).
Default undefined ""
The value can be determined in one of the following ways:
- using the startup argument:
--database-client-cert-path=/opt/yucca/ssl/cert.crt
- using the environment variable:
export YUCCA_DATABASE_CLIENT_CERT_PATH=/opt/yucca/ssl/cert.crt
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
client_cert_path = "/opt/yucca/ssl/cert.crt"
client_key_path¶
The path to the file with the key in the case of using SSL (only for postgres).
Default undefined ""
The value can be determined in one of the following ways:
- using the startup argument:
--database-client-key-path=/opt/yucca/ssl/cert.key
- using the environment variable:
export YUCCA_DATABASE_CLIENT_KEY_PATH=/opt/yucca/ssl/cert.key
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
client_key_path = "/opt/yucca/ssl/cert.key"
cache_mode¶
The shared cache parameter used for connecting to the database (only for sqlite3). Possible values: private
, shared
.
Default is shared
The value can be determined in one of the following ways:
- using the startup argument:
--database-cache-mode=shared
- using the environment variable:
export YUCCA_DATABASE_CACHE_MODE=shared
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
cache_mode = "shared"
conn_max_lifetime¶
Sets the maximum time during which the connection can be reused.
Default is 0s
The value can be determined in one of the following ways:
- using the startup argument:
--database-conn-max-lifetime=0s
- using the environment variable:
export YUCCA_DATABASE_CONN_MAX_LIFETIME=0s
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
conn_max_lifetime = "0s"
log_queries¶
Log SQL queries and run time.
Default is false
The value can be determined in one of the following ways:
- using the run argument:
--database-log-queries=false
- using the environment variable:
export YUCCA_DATABASE_LOG_QUERIES=false
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
log_queries = false
max_open_conn¶
The maximum number of open connections to the database (postgres only).
Default is 0
The value can be determined in one of the following ways:
- using the startup argument:
--database-max-open-conn=0
- using the environment variable:
export YUCCA_DATABASE_MAX_OPEN_CONN=0
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
max_open_conn = 0
max_idle_conn¶
Maximum number of connections pending (postgres only).
Default is 2
The value can be determined in one of the following ways:
- using the startup argument:
--database-max-idle-conn=2
- using the environment variable:
export YUCCA_DATABASE_MAX_IDLE_CONN=2
- using the configuration file:
# /opt/yucca/yucca.toml
[database]
max_idle_conn = 2
executor¶
The startup parameters of the streams.
type¶
Executor type for parking streams. Allowed value exec
.
- Exec - the server starts ffmpeg and monitors work
Default is exec
The value can be determined in one of the following ways:
- using the startup argument:
--executor=exec
- using the environment variable:
export YUCCA_EXECUTOR_TYPE=exec
- using the configuration file:
# /opt/yucca/yucca.toml
[executor]
type = "exec"
log_level¶
The logging level for executor. Possible values: panic
, fatal
, error
, warning
, info
, debug
).
Default is info
The value can be determined in one of the following ways:
- using the startup argument:
--executor-log-level=info
- using the environment variable:
export YUCCA_EXECUTOR_LOG_LEVEL=info
- using the configuration file:
# /opt/yucca/yucca.toml
[executor]
log_level = "info"
exec¶
Additional parameters for the type exec
.
cancel_grace_period¶
The waiting interval for the completion of all running subprocesses (ffmpeg, ffprobe,...).
Default is 5s
The value can be determined in one of the following ways:
- using the launch argument:
--exec-cancel-grace-period=5s
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_CANCEL_GRACE_PERIOD=5s
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
cancel_grace_period = "5s"
ffmpeg_log_level¶
The logging level for ffmpeg processes.
Default is error
The value can be determined in one of the following ways:
- using the launch argument:
--exec-ffmpeg-log-level="error"
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_LEVEL="error"
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_level = "error"
ffmpeg_log_max_file¶
The maximum number of log files that can be present.
Default is 5
The value can be determined in one of the following ways:
- using the launch argument:
--exec-ffmpeg-log-max-file=5
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_FILE=5
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_file = 5
ffmpeg_log_max_size¶
The maximum size of the log before it is rolled.
Default is 20mb
The value can be determined in one of the following ways:
- using the launch argument:
--exec-ffmpeg-log-max-size="20mb"
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_SIZE="20mb"
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_size = "20mb"
hls_list_size¶
The length of the m3u8 HLS playlist.
Default is 5
The value can be determined in one of the following ways:
- using the launch argument:
--exec-hls-list-size=5
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_HLS_LIST_SIZE=5
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
hls_list_size = 5
hls_time¶
The desired length of the HLS video segment segments in seconds.
Default is 2
The value can be determined in one of the following ways:
- using the launch argument:
--exec-hls-time=2
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_HLS_TIME=5
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
hls_time = 5
preview¶
Enabling the creation of image previews in the background.
Default is true
The value can be determined in one of the following ways:
- using the launch argument:
--exec-preview=true
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_PREVIEW=false
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
preview = true
preview_interval¶
The interval for creating preview images.
Default is 5s
The value can be determined in one of the following ways:
- using the launch argument:
--exec-preview-interval=5s
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_PREVIEW_INTERVAL=5s
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
preview_interval = "5s"
probe_interval¶
The interval from which the stream begins to be checked for availability, the interval gradually
increases (in order to avoid the problem when frequent checks lead to the IP camera hanging)
to the value set in probe_interval_maximum
, while the number of attempts should not
exceed the value of probe_retries
, otherwise the stream will go to the status Failed.
Default is 5s
The value can be determined in one of the following ways:
- using the launch argument:
--exec-probe-interval="5s"
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL="5s"
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval = "5s"
probe_interval_maximum¶
See the description of probe_interval
.
Default is 1m0s
The value can be determined in one of the following ways:
- using the launch argument:
--exec-probe-interval-maximum="1m0s"
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL_MAXIMUM="1m0s"
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval_maximum = "1m0s"
probe_retries¶
See the description of probe_interval
.
Default is 5
The value can be determined in one of the following ways:
- using the launch argument:
--exec-probe-retries=5
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_PROBE_RETRIES=5
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
probe_retries = 5
probe_timeout¶
Timeout for getting information on the source.
Default is 5
The value can be determined in one of the following ways:
- using the launch argument:
--exec-probe-timeout="1m0s"
- using the environment variable:
export YUCCA_EXECUTOR_EXEC_PROBE_TIMEOUT="1m0s"
- using the configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
probe_timeout = "1m0s"
cluster¶
Parameters related for cluster configuration.
cluster_enabled¶
Starts in cluster mode.
Default is false
The value can be determined in one of the following ways:
- using the launch argument:
--cluster=true
- using the environment variable:
export YUCCA_CLUSTER_ENABLED=true
- using the configuration file:
# /opt/yucca/yucca.toml
[cluster]
enabled = true
cluster_advertise_address¶
Address to advertise to other cluster members.
Default is 127.0.0.1:9940
The value can be determined in one of the following ways:
- using the launch argument:
--cluster-advertise-address="127.0.0.1:9940"
- using the environment variable:
export YUCCA_CLUSTER_ADVERTISE_ADDRESS=24h
- using the configuration file:
# /opt/yucca/yucca.toml
[cluster]
advertise_address = "127.0.0.1:9940"
cluster_listen_address¶
Address to listen.
Default is 0.0.0.0:9940
The value can be determined in one of the following ways:
- using the launch argument:
--cluster-listen-address="0.0.0.0:9940"
- using the environment variable:
export YUCCA_CLUSTER_LISTEN_ADDRESS="0.0.0.0:9940"
- using the configuration file:
# /opt/yucca/yucca.toml
[cluster]
listen_address = "0.0.0.0:9940"
streams¶
Parameters related to the behavior of streams.
archive_download_max_duration¶
The maximum allowed length of the requested time interval for downloading.
Default is 24h
The value can be determined in one of the following ways:
- using the launch argument:
--streams-archive-download-max-duration=24h
- using the environment variable:
export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_MAX_DURATION=24h
- using the configuration file:
# /opt/yucca/yucca.toml
[streams]
archive_download_max_duration = "24h"
archive_download_request_lifetime¶
The lifetime of the segment requested for downloading.
When downloading archive intervals, a file of the requested length is generated and will be available for download during the time specified in this parameter. If you download long segments at a slow download speed, it is recommended to increase the time in this parameter.
Default is 1h0m0s
The value can be determined in one of the following ways:
- using the launch argument:
--streams-archive-download-request-lifetime=6h
- using environment variable:
export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_REQUEST_LIFETIME=1h0m0s
- using the configuration file:
# /opt/yucca/yucca.toml
[streams]
archive_download_request_lifetime = "1h0m0s"
archive_max_depth_hours¶
The maximum allowed depth for storing the archive in hours.
Default is -1
(unlimited)
The value can be determined in one of the following ways:
- using the launch argument:
--streams-archive-max-depth-hours=-1
- using the environment variable:
export YUCCA_STREAMS_ARCHIVE_MAX_DEPTH_HOURS=-1
- using the configuration file:
# /opt/yucca/yucca.toml
[streams]
archive_max_depth_hours = -1
live_on_demand_lease_duration¶
Lease lifetime for live stream on demand (live on-demand).
The time during which the requested live on-demand stream will work after the last lease extension, i.e. the lease lifetime after the last lease extension. The lease is extended when the status of the stream is requested on its viewing page. The smaller the number, the faster the stream will go into a pause state after closing the viewing page.
Default 1m0s
The value can be determined in one of the following ways:
- with launch argument:
--streams-live-on-demand-lease-duration=1m0s
- using environment variable:
export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_DURATION=1m0s
- using the configuration file:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_duration = 1m0s
live_on_demand_lease_interval¶
The frequency of checking the active lease for a live stream on demand (live on-demand). The parameter must be less than live_on_demand_lease_duration.
Default is 30s
The value can be determined in one of the following ways:
- with launch argument:
--streams-live-on-demand-lease-interval=30s
- using environment variable:
export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_INTERVAL=30s
- using the configuration file:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_interval = 30s
playlist_max_duration¶
The maximum allowed length of the requested time interval for an M3U8 playlist.
Default is 3h
The value can be determined in one of the following ways:
- using the launch argument:
--streams-playlist-max-duration=3h
- using the environment variable:
export YUCCA_STREAMS_PLAYLIST_MAX_DURATION=3h
- using the configuration file:
# /opt/yucca/yucca.toml
[streams]
playlist_max_duration = "3h"
ranges_max_duration¶
The maximum allowed length of the requested time interval for ranges (archive availability range).
Default is 168h
The value can be determined in one of the following ways:
- using the startup argument:
--streams-ranges-max-duration=168h
- using the environment variable:
export YUCCA_STREAMS_RANGES_MAX_DURATION=168h
- using the configuration file:
# /opt/yucca/yucca.toml
[streams]
ranges_max_duration = "168h"
uuid_slug¶
Use the generated UUID as the public identifier of the stream.
Default is false
The value can be determined in one of the following ways:
- using the launch argument:
--streams-uuid-slug=false
- using the environment variable:
export YUCCA_STREAMS_UUID_SLUG=false
- using the configuration file:
# /opt/yucca/yucca.toml
[streams]
uuid_slug = false
branding 💰¶
💰 Available only in Enterprise
Branding.
app_logo¶
The path to the logo file. You can specify the http(s) URL http://
or the path on the file system file://
.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--branding-app-logo=http://example.com/logo.png
- using the environment variable:
export YUCCA_BRANDING_APP_LOGO=file:///opt/yucca/logo.png
- using the configuration file:
# /opt/yucca/yucca.toml
[branding]
app_logo = "file:///opt/yucca/logo.png"
app_title¶
Text in the Title field.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--branding-app-title=Yucca
- using the environment variable:
export YUCCA_BRANDING_APP_TITLE=Yucca
- using the configuration file:
# /opt/yucca/yucca.toml
[branding]
app_title = "Yucca"
site¶
Link to your web-site.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--branding-site=https://yucca.app
- using the environment variable:
export YUCCA_BRANDING_SITE=https://yucca.app
- using the configuration file:
# /opt/yucca/yucca.toml
[branding]
site = "https://yucca.app"
documentation¶
Link to documentation.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--branding-documentation=https://docs.yucca.app
- using the environment variable:
export YUCCA_BRANDING_DOCUMENTATION=https://docs.yucca.app
- using the configuration file:
# /opt/yucca/yucca.toml
[branding]
documentation = "https://docs.yucca.app"
fav_icon¶
File path Favicon. You can specify the http(s) URL http://
or the path on the file system file://
.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--branding-fav-icon=http://example.com/favicon.ico
- using the environment variable:
export YUCCA_BRANDING_FAV_ICON=file:///opt/yucca/favicon.ico
- using the configuration file:
# /opt/yucca/yucca.toml
[branding]
fav_icon = "file:///opt/yucca/favicon.ico"
quota 💰¶
💰 Available only in Enterprise
Global resource quotas. Can limit the maximum number of specific resources that can be created/added as part of the installation.
global_stream¶
The quota for the creation of streams.
Default is -1
(unlimited)
The value can be determined in one of the following ways:
- using the launch argument:
--quota-global-stream=-1
- using the environment variable:
export YUCCA_QUOTA_GLOBAL_STREAM=-1
- using the configuration file:
# /opt/yucca/yucca.toml
[quota]
global_stream = -1
global_team¶
The quota for team building.
Default is -1
(unlimited)
The value can be determined in one of the following ways:
- using the launch argument:
--quota-global-team=-1
- using the environment variable:
export YUCCA_QUOTA_GLOBAL_TEAM=-1
- using the configuration file:
# /opt/yucca/yucca.toml
[quota]
global_team = -1
global_user¶
Quota for creating users.
Default is -1
(unlimited)
The value can be determined in one of the following ways:
- using the launch argument:
--quota-global-user=-1
- using the environment variable:
export YUCCA_QUOTA_GLOBAL_USER=-1
- using the configuration file:
# /opt/yucca/yucca.toml
[quota]
global_user = -1
team_user¶
The quota for the maximum number of users in the team.
Default is -1
(unlimited)
The value can be determined in one of the following ways:
- using the launch argument:
--quota-team-user=-1
- using the environment variable:
export YUCCA_QUOTA_TEAM_USER=-1
- using the configuration file:
# /opt/yucca/yucca.toml
[quota]
team_user = -1
cookie¶
Cookie settings.
cookie_lifetime¶
Cookie session lifetime.
Default is "720h0m0s"
The value can be determined in one of the following ways:
- using the startup argument:
--cookie-lifetime="720h0m0s"
- using the environment variable:
export YUCCA_COOKIE_LIFETIME="720h0m0s"
- using the configuration file:
# /opt/yucca/yucca.toml
[cookie]
lifetime = "720h0m0s"
security¶
Security settings.
audit_logs¶
Enable login audit.
Default is false
The value can be determined in one of the following ways:
- using the startup argument:
--security-audit-logs=false
- using the environment variable:
export YUCCA_SECURITY_AUDIT_LOGS=false
- using the configuration file:
# /opt/yucca/yucca.html
[security]
audit_logs = false
brute_force_login_protection¶
Enable password protection.
Default is true
The value can be determined in one of the following ways:
- using the startup argument:
--security-brute-force-login-protection=true
- using the environment variable:
export YUCCA_SECURITY_BRUTE_FORCE_LOGIN_PROTECTION=true
- using the configuration file:
# /opt/yucca/yucca.toml
[security]
brute_force_login_protection = true
one_time_code_lifetime¶
Duration of one-time codes used for 2FA, password reset.
Default is "12h0m0s"
The value can be determined in one of the following ways:
- using the startup argument:
--security-one-time-code-lifetime="12h0m0s"
- using the environment variable:
export YUCCA_SECURITY_ONE_TIME_CODE_LIFETIME="12h0m0s"
- using the configuration file:
# /opt/yucca/yucca.toml
[security]
one_time_code_lifetime = "12h0m0s"
security_password_length¶
Minimum password length.
Default is 3
The value can be determined in one of the following ways:
- using the startup argument:
--security-password-length=3
- using the environment variable:
export YUCCA_SECURITY_PASSWORD_LENGTH=3
- using the configuration file:
# /opt/yucca/yucca.toml
[security]
password_length = 3
security_secret_key¶
Salt for signing secrets and passwords.
Default is "random string"
The value can be determined in one of the following ways:
- using the startup argument:
--security-secret-key="mWmPmpjFVesnXLxb6PBDcXPzyHva3c2p"
- using the environment variable:
export YUCCA_SECURITY_SECRET_KEY="mWmPmpjFVesnXLxb6PBDcXPzyHva3c2p"
- using the configuration file:
# /opt/yucca/yucca.toml
[security]
secret_key = "mWmPmpjFVesnXLxb6PBDcXPzyHva3c2p"
smtp_client¶
Settings SMTP client. Responsible for sending notifications to users by email, for example, that the license is about to expire.
enabled¶
Enable SMTP client to send email.
Default is false
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-client=true
- using the environment variable:
export YUCCA_SMTP_CLIENT_ENABLED=true
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
enabled = true
host¶
SMTP server address.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-client-host="smtp.gmail.com:465"
- using the environment variable:
export YUCCA_SMTP_CLIENT_HOST="smtp.yandex.ru:465"
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
host = ""
user¶
User in case of SMTP auth.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-client-user=""
- using the environment variable:
export YUCCA_SMTP_CLIENT_USER=""
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
user = ""
password¶
Password in case of SMTP auth.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-client-password=""
- using the environment variable:
export YUCCA_SMTP_CLIENT_PASSWORD=""
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
password = ""
from_address¶
Address used when sending out emails.
Default is admin@yucca.localhost
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-client-from-address="admin@yucca.localhost"
- using the environment variable:
export YUCCA_SMTP_CLIENT_FROM_ADDRESS="admin@yucca.localhost"
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
from_address = "admin@yucca.localhost"
from_name¶
Name to be used when sending out emails.
Default is Yucca
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-client-from-name="Yucca"
- using the environment variable:
export YUCCA_SMTP_CLIENT_FROM_NAME="Yucca"
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
from_name = "Yucca"
cert_path¶
File path to a cert file.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-client-cert-path=""
- using the environment variable:
export YUCCA_SMTP_CLIENT_CERT_PATH=""
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
cert_path = ""
key_path¶
File path to a key file.
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-client-key-path=""
- using the environment variable:
export YUCCA_SMTP_CLIENT_KEY_PATH=""
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
key_path = ""
skip_verify¶
Verify SSL for SMTP server.
Default is false
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-client-skip-verify=""
- using the environment variable:
export YUCCA_SMTP_CLIENT_SKIP_VERIFY=""
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
skip_verify = ""
smtp_server¶
Settings of the built-in SMTP server.
enabled¶
Enable the built-in SMTP server to receive events from the cameras.
Default is true
The value can be determined in one of the following ways:
- using the startup argument:
--smtp-server=true
- using the environment variable:
export YUCCA_SMTP_SERVER_ENABLED=true
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
enabled = true
listen_address¶
The address where the SMTP server will run.
Default is :1025
The value can be determined in one of the following ways:
- using the launch argument:
--smtp-server-listen-address=:1025
- using the environment variable:
export YUCCA_SMTP_SERVER_LISTEN_ADDRESS=:1025
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
listen_address = ":1025"
username¶
Login for connecting to the SMTP server.
Default undefined ""
The value can be determined in one of the following ways:
- using the startup argument:
--smtp-server-username=admin
- using the environment variable:
export YUCCA_SMTP_SERVER_USERNAME=admin
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
username = "admin"
read_timeout¶
Timeout for reading an incoming message.
Default is 1s
The value can be determined in one of the following ways:
- using the startup argument:
--smtp-server-read-timeout=1s
- using the environment variable:
export YUCCA_SMTP_SERVER_READ_TIMEOUT=1s
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
read_timeout = "1s"
event_window_duration¶
Duration of event window, motion detection.
Default is 1s
The value can be determined in one of the following ways:
- using the startup argument:
--smtp-server-event-window-duration=40s
- using the environment variable:
export YUCCA_SMTP_SERVER_EVENT_WINDOW_DURATION=40s
- using the configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
event_window_duration = "40s"
telemetry¶
Telemetry.
enabled¶
Enable the provision of metrics in the Prometheus format.
Default is true
The value can be determined in one of the following ways:
- using the launch argument:
--telemetry=true
- using the environment variable:
export YUCCA_TELEMETRY_ENABLED=true
- using the configuration file:
# /opt/yucca/yucca.toml
[telemetry]
enabled = true
listen_address¶
Address on which to expose metrics.
Default is :9912
The value can be determined in one of the following ways:
- using the launch argument:
--telemetry-listen-address=:9912
- using the environment variable:
export YUCCA_TELEMETRY_LISTEN_ADDRESS=:9912
- using the configuration file:
# /opt/yucca/yucca.toml
[telemetry]
listen_address = ":9912"
path¶
URI for accessing telemetry.
Default is /metrics
The value can be determined in one of the following ways:
- using the launch argument:
--telemetry-path=/metrics
- using the environment variable:
export YUCCA_TELEMETRY_PATH=/metrics
- using the configuration file:
# /opt/yucca/yucca.toml
[telemetry]
path = "/metrics"
basic_auth_username¶
The login of the basic authorization for access to telemetry.
Default undefined ""
The value can be determined in one of the following ways:
- using the startup argument:
--telemetry-basic-auth-username=admin
- using the environment variable:
export YUCCA_TELEMETRY_BASIC_AUTH_USERNAME=admin
- using the configuration file:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_username = "admin"
basic_auth_password¶
The basic authorization password for accessing telemetry.
Default undefined ""
The value can be determined in one of the following ways:
- using the startup argument:
--telemetry-basic-auth-password=admin
- using the environment variable:
export YUCCA_TELEMETRY_BASIC_AUTH_PASSWORD=admin
- using the configuration file:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_password = "admin"
environment_info¶
Labels for yucca_environment_info
metric.
Default undefined ""
The value can be determined in one of the following ways:
- using the startup argument:
--telemetry-environment-info=env:test
- using the environment variable::
export YUCCA_TELEMETRY_ENVIRONMENT_INFO=env:test
- using the configuration file:
# /opt/yucca/yucca.toml
[telemetry.environment_info]
env = "test"
analytics¶
Collecting analytics.
enabled 💰¶
💰 Disabling is only available in Enterprise, enabled by default
Enable collecting and sending analytical data and system configuration: processor model, operating system type and version, RAM size, disk size, number of running threads. We do not collect information about the sources of the streams and other sensitive data.
Default is true
The value can be determined in one of the following ways:
- using the launch argument:
--analytics-enabled=true
- using the environment variable:
export YUCCA_ANALYTICS_ENABLED=true
- using the configuration file:
# /opt/yucca/yucca.toml
[analytics]
enabled = true
Information about the collection is also available in the terms of use.
yandex_metrika_counter_id¶
Yandex.Metrika Counter ID (enabled if specified).
Default undefined ""
The value can be determined in one of the following ways:
- using the launch argument:
--analytics-yandex-metrika-counter-id=12345678
- using the environment variable:
export YUCCA_ANALYTICS_YANDEX_METRIKA_COUNTER_ID=12345678
- using the configuration file:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_counter_id = 12345678
yandex_metrika_webvisor¶
Detailed recordings of user activity on the site: mouse movement, scrolling, and clicks.
Default is false
The value can be determined in one of the following ways:
- using the launch argument:
--analytics-yandex-metrika-webvisor=true
- using the environment variable:
export YUCCA_ANALYTICS_YANDEX_METRIKA_WEBVISOR=true
- using the configuration file:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_webvisor = true