Skip to main content

Configuration

Configuration can be done via a configuration file, command line arguments or environment variables.

Priority when reading configuration:
  1. File
  2. Environment variables
  3. Command line arguments
tip
  1. Generate a configuration file with default values:
/opt/yucca/yucca server --show-config --show-config-format=toml
  1. You can view all available environment variables with the following command:
/opt/yucca/yucca server --show-config --show-config-format=env
  1. You can view all available command line arguments with the following command:
/opt/yucca/yucca server --help

Parameters are divided into logical sections (blocks) that correspond to the prefix in command line arguments and environment variables.

server​

Global server parameters.

log_level​

Доступно с версии:0.9.0

Logging level for the server.
Possible values: panic, fatal, error, warning, info, debug

Default info

The value can be defined in one of the following ways:

  • using a launch argument: --log-level=info
  • using an environment variable: #!shell export YUCCA_SERVER_LOG_LEVEL=info
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
log_level = "info"

data_dir​

Доступно с версии:0.4.0

Global directory for storing state (when using sqlite3) and stream data.

Default ./data

The value can be defined in one of the following ways:

  • using a launch argument: --data-dir=/opt/yucca/data/
  • using an environment variable: #!shell export YUCCA_SERVER_DATA_DIR=/opt/yucca/data/
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
data_dir = "/opt/yucca/data/"

alloc_dir​

Доступно с версии:0.4.0

Directory with stream data (video archive and other data).

Default <data_dir>/alloc

The value can be defined in one of the following ways:

  • using a launch argument: --alloc-dir=/opt/yucca/data/alloc/
  • using an environment variable: #!shell export YUCCA_SERVER_ALLOC_DIR=/opt/yucca/data/alloc/
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
alloc_dir = "/opt/yucca/data/alloc/"

state_dir​

Доступно с версии:0.4.0

Directory with the database file (when using sqlite3).

Default <data_dir>/server

The value can be defined in one of the following ways:

  • using a launch argument: --state-dir=/opt/yucca/data/server/
  • using an environment variable: #!shell export YUCCA_SERVER_STATE_DIR=/opt/yucca/data/server/
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
state_dir = "/opt/yucca/data/server/"

temp_dir​

Доступно с версии:0.9.0

tmpfs directory for short-lived data. (this is where rotated chunks for a live stream are stored)

Default /dev/shm/yucca

The value can be defined in one of the following ways:

  • using a launch argument: --temp-dir=/dev/shm/yucca
  • using an environment variable: #!shell export YUCCA_SERVER_TEMP_DIR=/dev/shm/yucca
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
temp_dir = "/dev/shm/yucca"

alloc_dir_warning_threshold​

Доступно с версии:0.9.0

Threshold percentage for the disk usage warning.
All administrators will see a warning in the server interface, and if an SMTP client is configured, all administrators will also receive a notification by e-mail that disk space is running low.

Default 80

The value can be defined in one of the following ways:

  • using a launch argument: --alloc-dir-warning-threshold=80
  • using an environment variable: #!shell export YUCCA_SERVER_ALLOC_DIR_WARNING_THRESHOLD=80
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
alloc_dir_warning_threshold = "80"

stats_collection_interval​

Доступно с версии:0.8.0

Interval for collecting system resource statistics.

Default 1s

The value can be defined in one of the following ways:

  • using a launch argument: --stats-collection-interval=1s
  • using an environment variable: #!shell export YUCCA_SERVER_STATS_COLLECTION_INTERVAL=1s
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
stats_collection_interval = "1s"

default_language​

Доступно с версии:0.9.0

Default interface language for new users, also used on the login page.
Possible values: en, ru, uk, es, pt, tr

Default en

The value can be defined in one of the following ways:

  • using a launch argument: --default-language=en
  • using an environment variable: #!shell export YUCCA_SERVER_DEFAULT_LANGUAGE=en
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
default_language = "en"

domain​

Доступно с версии:0.9.0

Used to determine the Server field when configuring receiving events by Email

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --domain=demo.yucca.app
  • using an environment variable: #!shell export YUCCA_SERVER_DOMAIN=192.168.188.15
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
domain = "demo.yucca.app"

health_check_interval​

Доступно с версии:0.9.0

Interval for checking the health of dependencies.

Default "30s"

The value can be defined in one of the following ways:

  • using a launch argument: --health-check-interval="30s"
  • using an environment variable: #!shell export YUCCA_SERVER_HEALTH_CHECK_INTERVAL="30s"
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
health_check_interval = "30s"

listen_address​

Доступно с версии:0.4.0

IP address and port on which the web interface will be available.

Default :9910

The value can be defined in one of the following ways:

  • using a launch argument: --web.listen-address=:9910
  • using an environment variable: #!shell export YUCCA_SERVER_LISTEN_ADDRESS=:9910
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
listen_address = ":9910"

log_file​

Доступно с версии:0.9.0

Path to the log file; if not specified, stdout is used.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --log-file=/var/log/yucca.log
  • using an environment variable: #!shell export YUCCA_SERVER_LOG_FILE=/var/log/yucca.log
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
log_file = "/var/log/yucca.log"

self_logs​

Доступно с версии:0.9.0

View server and stream logs in the interface on the debug tab.

Default true

The value can be defined in one of the following ways:

  • using a launch argument: --self-logs=true
  • using an environment variable: #!shell export YUCCA_SERVER_SELF_LOGS=false
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
self_logs = true

log_buffer_size​

Доступно с версии:0.9.0

Number of recent messages in the interface on the debug tab.

Default 50

The value can be defined in one of the following ways:

  • using a launch argument: --log-buffer-size=50
  • using an environment variable: #!shell export YUCCA_SERVER_LOG_BUFFER_SIZE=50
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
log_buffer_size = 50

cert_file​

Доступно с версии:0.4.0

Path to the certificate file when using HTTPS.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --cert-file=/opt/yucca/ssl/cert.crt
  • using an environment variable: #!shell export YUCCA_SERVER_CERT_FILE=/opt/yucca/ssl/cert.crt
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
cert_file = "/opt/yucca/ssl/cert.crt"

cert_key​

Доступно с версии:0.4.0

Path to the key file when using HTTPS.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --cert-key=/opt/yucca/ssl/cert.key
  • using an environment variable: #!shell export YUCCA_SERVER_CERT_KEY=/opt/yucca/ssl/cert.key
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
cert_key = "/opt/yucca/ssl/cert.key"

pprof​

Доступно с версии:0.8.0

Enable profiling.

Default false

The value can be defined in one of the following ways:

  • using a launch argument: --pprof=true
  • using an environment variable: #!shell export YUCCA_SERVER_PPROF=true
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
pprof = true

pprof_listen_address​

Доступно с версии:0.8.0

IP address and port on which the pprof profiler will be available.

Default :9911

The value can be defined in one of the following ways:

  • using a launch argument: --pprof-listen-address=":9911"
  • using an environment variable: #!shell export YUCCA_SERVER_PPROF_LISTEN_ADDRESS=":9911"
  • using a configuration file:
# /opt/yucca/yucca.toml
[server]
pprof_listen_address = ":9911"

validate​

Доступно с версии:0.9.0

Flag to validate the correctness of the configuration.

note

The value can be defined in one of the following ways:

  • using a launch argument: --validate

Usage example

./yucca server --config /opt/yucca/yucca.toml --validate
Valid configuration

database​

Database connection.

type​

Доступно с версии:0.4.0

2 database types are supported for storing state – sqlite3 and postgres. For small installations, sqlite3 is sufficient; for a large number of streams, we recommend using postgres.

Default sqlite3

The value can be defined in one of the following ways:

  • using a launch argument: --database-type=sqlite3
  • using an environment variable: #!shell export YUCCA_DATABASE_TYPE=sqlite3
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
type = "sqlite3"

path​

Доступно с версии:0.4.0

Path to the database file (sqlite3 only).

Default <state_dir>/state.db

The value can be defined in one of the following ways:

  • using a launch argument: --database-path=/opt/yucca/server/state.db
  • using an environment variable: #!shell export YUCCA_DATABASE_PATH=/opt/yucca/server/state.db
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
path = "/opt/yucca/server/state.db"

host​

Доступно с версии:0.4.0

Database connection address (postgres only).

Default 127.0.0.1:5432

The value can be defined in one of the following ways:

  • using a launch argument: --database-host=127.0.0.1:5432
  • using an environment variable: #!shell export YUCCA_DATABASE_HOST=127.0.0.1:5432
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
host = "127.0.0.1:5432"

name​

Доступно с версии:0.4.0

Database name (postgres only).

Default yucca

The value can be defined in one of the following ways:

  • using a launch argument: --database-name=yucca
  • using an environment variable: #!shell export YUCCA_DATABASE_NAME=yucca
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
name = "yucca"

user​

Доступно с версии:0.4.0

Username for the connection (postgres only).

Default postgres

The value can be defined in one of the following ways:

  • using a launch argument: --database-user=postgres
  • using an environment variable: #!shell export YUCCA_DATABASE_USER=postgres
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
user = "postgres"

password​

Доступно с версии:0.4.0

Password for the connection (postgres only).

Default postgres

The value can be defined in one of the following ways:

  • using a launch argument: --database-password=postgres
  • using an environment variable: #!shell export YUCCA_DATABASE_PASSWORD=postgres
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
password = "postgres"

ssl_mode​

Доступно с версии:0.4.0

Use SSL (encrypted connection) for the connection (postgres only). Possible values: disable, require, verify-full).

Default disable

The value can be defined in one of the following ways:

  • using a launch argument: --database-ssl-mode=disable
  • using an environment variable: #!shell export YUCCA_DATABASE_SSL_MODE=disable
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
ssl_mode = "disable"

busy_timeout​

Доступно с версии:0.4.0

Timeout in seconds to wait for the SQLite table to unlock (sqlite3 only).

Default 500

The value can be defined in one of the following ways:

  • using a launch argument: --database-busy-timeout=500
  • using an environment variable: #!shell export YUCCA_DATABASE_BUSY_TIMEOUT=500
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
busy_timeout = 500

ca_cert_path​

Доступно с версии:0.4.0

Path to the certificate authority (CA) certificate when using SSL (postgres only).

Default /etc/ssl/certs

The value can be defined in one of the following ways:

  • using a launch argument: --database-ca-cert-path=/etc/ssl/certs
  • using an environment variable: #!shell export YUCCA_DATABASE_CA_CERT_PATH=/etc/ssl/certs
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
ca_cert_path = "/etc/ssl/certs"

client_cert_path​

Доступно с версии:0.4.0

Path to the certificate file when using SSL (postgres only).

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --database-client-cert-path=/opt/yucca/ssl/cert.crt
  • using an environment variable: #!shell export YUCCA_DATABASE_CLIENT_CERT_PATH=/opt/yucca/ssl/cert.crt
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
client_cert_path = "/opt/yucca/ssl/cert.crt"

client_key_path​

Доступно с версии:0.4.0

Path to the key file when using SSL (postgres only).

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --database-client-key-path=/opt/yucca/ssl/cert.key
  • using an environment variable: #!shell export YUCCA_DATABASE_CLIENT_KEY_PATH=/opt/yucca/ssl/cert.key
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
client_key_path = "/opt/yucca/ssl/cert.key"

cache_mode​

Доступно с версии:0.4.0

Shared cache setting used for the database connection (sqlite3 only). Possible values: private, shared.

Default shared

The value can be defined in one of the following ways:

  • using a launch argument: --database-cache-mode=shared
  • using an environment variable: #!shell export YUCCA_DATABASE_CACHE_MODE=shared
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
cache_mode = "shared"

conn_max_lifetime​

Доступно с версии:0.4.0

Sets the maximum amount of time a connection may be reused.

Default 0s

The value can be defined in one of the following ways:

  • using a launch argument: --database-conn-max-lifetime=0s
  • using an environment variable: #!shell export YUCCA_DATABASE_CONN_MAX_LIFETIME=0s
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
conn_max_lifetime = "0s"

log_queries​

Доступно с версии:0.4.0

Log SQL queries and their execution time.

Default false

The value can be defined in one of the following ways:

  • using a launch argument: --database-log-queries=false
  • using an environment variable: #!shell export YUCCA_DATABASE_LOG_QUERIES=false
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
log_queries = false

max_open_conn​

Доступно с версии:0.4.0

Maximum number of open database connections (postgres only).

Default 0

The value can be defined in one of the following ways:

  • using a launch argument: --database-max-open-conn=0
  • using an environment variable: #!shell export YUCCA_DATABASE_MAX_OPEN_CONN=0
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
max_open_conn = 0

max_idle_conn​

Доступно с версии:0.4.0

Maximum number of idle connections (postgres only).

Default 2

The value can be defined in one of the following ways:

  • using a launch argument: --database-max-idle-conn=2
  • using an environment variable: #!shell export YUCCA_DATABASE_MAX_IDLE_CONN=2
  • using a configuration file:
# /opt/yucca/yucca.toml
[database]
max_idle_conn = 2

streams​

Parameters related to stream behavior.

archive_download_max_duration​

Доступно с версии:0.9.0

Maximum allowed length of the requested time interval for downloading.

Default 24h

The value can be defined in one of the following ways:

  • using a launch argument: --streams-archive-download-max-duration=24h
  • using an environment variable: #!shell export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_MAX_DURATION=24h
  • using a configuration file:
# /opt/yucca/yucca.toml
[streams]
archive_download_max_duration = "24h"

archive_download_request_lifetime​

Доступно с версии:0.9.0

Lifetime of a downloaded archive interval.

When downloading archive intervals, a file of the requested length is generated and will be available for download for the duration specified in this parameter. If you are downloading long intervals at a slow download speed, we recommend increasing this parameter's value.

Default 1h0m0s

The value can be defined in one of the following ways:

  • using a launch argument: --streams-archive-download-request-lifetime=6h
  • using an environment variable: #!shell export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_REQUEST_LIFETIME=1h0m0s
  • using a configuration file:
# /opt/yucca/yucca.toml
[streams]
archive_download_request_lifetime = "1h0m0s"

archive_max_depth_hours​

Доступно с версии:0.9.0

Maximum allowed archive retention depth in hours.

Unlimited by default -1

The value can be defined in one of the following ways:

  • using a launch argument: --streams-archive-max-depth-hours=-1
  • using an environment variable: #!shell export YUCCA_STREAMS_ARCHIVE_MAX_DEPTH_HOURS=-1
  • using a configuration file:
# /opt/yucca/yucca.toml
[streams]
archive_max_depth_hours = -1

live_on_demand_lease_duration​

Доступно с версии:0.9.0

Lease duration for a live on-demand stream.

The time during which a requested live on-demand stream will keep running after the last lease renewal, i.e. the lease lifetime after its last renewal. The lease is renewed when the stream status is requested on its viewing page. The lower the number, the faster the stream will switch to paused state after the viewing page is closed.

Default 1m0s

The value can be defined in one of the following ways:

  • using a launch argument: --streams-live-on-demand-lease-duration=1m0s
  • using an environment variable: #!shell export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_DURATION=1m0s
  • using a configuration file:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_duration = 1m0s

live_on_demand_lease_interval​

Доступно с версии:0.9.0

Frequency of checking the active lease for a live on-demand stream. This parameter must be smaller than live_on_demand_lease_duration.

Default 30s

The value can be defined in one of the following ways:

  • using a launch argument: --streams-live-on-demand-lease-interval=30s
  • using an environment variable: #!shell export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_INTERVAL=30s
  • using a configuration file:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_interval = 30s

playlist_max_duration​

Доступно с версии:0.9.0

Maximum allowed length of the requested time interval for an M3U8 playlist.

Default 3h

The value can be defined in one of the following ways:

  • using a launch argument: --streams-playlist-max-duration=3h
  • using an environment variable: #!shell export YUCCA_STREAMS_PLAYLIST_MAX_DURATION=3h
  • using a configuration file:
# /opt/yucca/yucca.toml
[streams]
playlist_max_duration = "3h"

ranges_max_duration​

Доступно с версии:0.9.0

Maximum allowed length of the requested time interval for ranges (archive availability range).

Default 168h

The value can be defined in one of the following ways:

  • using a launch argument: --streams-ranges-max-duration=168h
  • using an environment variable: #!shell export YUCCA_STREAMS_RANGES_MAX_DURATION=168h
  • using a configuration file:
# /opt/yucca/yucca.toml
[streams]
ranges_max_duration = "168h"

uuid_slug​

Доступно с версии:0.9.0

Use a generated UUID as the public stream identifier.

Default false

The value can be defined in one of the following ways:

  • using a launch argument: --streams-uuid-slug=false
  • using an environment variable: #!shell export YUCCA_STREAMS_UUID_SLUG=false
  • using a configuration file:
# /opt/yucca/yucca.toml
[streams]
uuid_slug = false

executor​

Stream startup parameters.

type​

Доступно с версии:0.8.0

Executor type for parking streams. Available values exec, docker.

  • Exec - the server starts ffmpeg and monitors it directly itself, without using docker and yucca-worker.
  • Docker - (deprecated and will be removed in the future) for each stream, the server starts a docker container running yucca-worker, which in turn starts ffmpeg and monitors it, restarting it in case of problems.
Default exec

The value can be defined in one of the following ways:

  • using a launch argument: --executor=exec
  • using an environment variable: #!shell export YUCCA_EXECUTOR_TYPE=docker
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor]
type = "exec"

log_level​

Доступно с версии:0.8.0

Executor logging level. Possible values: panic, fatal, error, warning, info, debug).

Default info

The value can be defined in one of the following ways:

  • using a launch argument: --executor-log-level=info
  • using an environment variable: #!shell export YUCCA_EXECUTOR_LOG_LEVEL=info
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor]
log_level = "info"

executor.exec​

Доступно с версии:0.8.0

Additional parameters for the exec type.

cancel_grace_period​

Доступно с версии:0.8.0

Interval to wait for all running subprocesses (ffmpeg, ffprobe, ...) to finish.

Default 5s

The value can be defined in one of the following ways:

  • using a launch argument: --exec-cancel-grace-period=5s
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_CANCEL_GRACE_PERIOD=5s
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
cancel_grace_period = "5s"

ffmpeg_log_level​

Доступно с версии:0.8.0

Logging level for ffmpeg processes.

Default error

The value can be defined in one of the following ways:

  • using a launch argument: --exec-ffmpeg-log-level="error"
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_LEVEL="error"
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_level = "error"

ffmpeg_log_max_file​

Доступно с версии:0.8.0

Maximum number of log files that can be present.

Default 5

The value can be defined in one of the following ways:

  • using a launch argument: --exec-ffmpeg-log-max-file=5
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_FILE=5
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_file = 5

ffmpeg_log_max_size​

Доступно с версии:0.8.0

Maximum log file size before it is rotated and compressed.

Default "20mb"

The value can be defined in one of the following ways:

  • using a launch argument: --exec-ffmpeg-log-max-size"20mb"
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_SIZE"20mb"
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_size ="20mb"

hls_list_size​

Доступно с версии:0.8.0

Length of the m3u8 HLS playlist.

Default 5

The value can be defined in one of the following ways:

  • using a launch argument: --exec-hls-list-size=5
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_HLS_LIST_SIZE=5
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
hls_list_size = 5

hls_time​

Доступно с версии:0.8.0

Desired length of HLS video segments in seconds.

Default 2

The value can be defined in one of the following ways:

  • using a launch argument: --exec-hls-time=2
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_HLS_TIME=5
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
hls_time = 5

preview​

Доступно с версии:0.8.0

Enable background preview image generation.

Default true

The value can be defined in one of the following ways:

  • using a launch argument: --exec-preview=true
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_PREVIEW=false
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
preview = true

preview_interval​

Доступно с версии:0.8.0

Preview image generation interval.

Default 5s

The value can be defined in one of the following ways:

  • using a launch argument: --exec-preview-interval=5s
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_PREVIEW_INTERVAL=5s
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
preview_interval = "5s"

probe_interval​

Доступно с версии:0.8.0

Interval at which the stream starts being checked for availability, the interval gradually increases (to avoid an issue where frequent checks cause the IP camera to hang) up to the value set in probe_interval_maximum, while the number of attempts must not exceed the value of probe_retries, otherwise the stream will switch to the Failed status.

Default 5s

The value can be defined in one of the following ways:

  • using a launch argument: --exec-probe-interval="5s"
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL="5s"
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval = "5s"

probe_interval_maximum​

Доступно с версии:0.8.0

See the description of probe_interval.

Default 1m0s

The value can be defined in one of the following ways:

  • using a launch argument: --exec-probe-interval-maximum="1m0s"
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL_MAXIMUM="1m0s"
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval_maximum = "1m0s"

probe_retries​

Доступно с версии:0.8.0

See the description of probe_interval.

Default 5

The value can be defined in one of the following ways:

  • using a launch argument: --exec-probe-retries=5
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_PROBE_RETRIES=5
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
probe_retries = 5

probe_timeout​

Доступно с версии:0.8.0

Timeout for retrieving source information.

Default 5

The value can be defined in one of the following ways:

  • using a launch argument: --exec-probe-timeout="1m0s"
  • using an environment variable: #!shell export YUCCA_EXECUTOR_EXEC_PROBE_TIMEOUT="1m0s"
  • using a configuration file:
# /opt/yucca/yucca.toml
[executor.exec]
probe_timeout = "1m0s"

smtp_client​

Built-in SMTP client settings. Responsible for sending notifications to users by e-mail, for example about a license expiring soon.

enabled​

Доступно с версии:0.8.0

Enable the SMTP client for sending e-mails.

Default false

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-client=true
  • using an environment variable: #!shell export YUCCA_SMTP_CLIENT_ENABLED=true
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
enabled = true

host​

Доступно с версии:0.8.0

SMTP server address.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-client-host="smtp.gmail.com:465"
  • using an environment variable: #!shell export YUCCA_SMTP_CLIENT_HOST="smtp.yandex.ru:465"
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
host = ""

user​

Доступно с версии:0.8.0

User for authorization on the SMTP server.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-client-user=""
  • using an environment variable: #!shell export YUCCA_SMTP_CLIENT_USER=""
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
user = ""

password​

Доступно с версии:0.8.0

Password for authorization on the SMTP server.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-client-password=""
  • using an environment variable: #!shell export YUCCA_SMTP_CLIENT_PASSWORD=""
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
password = ""

from_address​

Доступно с версии:0.8.0

Address used when sending e-mails.

Default "admin@yucca.localhost"

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-client-from-address="admin@yucca.localhost"
  • using an environment variable: #!shell export YUCCA_SMTP_CLIENT_FROM_ADDRESS="admin@yucca.localhost"
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
from_address = "admin@yucca.localhost"

from_name​

Доступно с версии:0.8.0

Name used when sending e-mails.

Default "Yucca"

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-client-from-name="Yucca"
  • using an environment variable: #!shell export YUCCA_SMTP_CLIENT_FROM_NAME="Yucca"
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
from_name = "Yucca"

cert_path​

Доступно с версии:0.8.0

Path to the certificate file.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-client-cert-path=""
  • using an environment variable: #!shell export YUCCA_SMTP_CLIENT_CERT_PATH=""
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
cert_path = ""

key_path​

Доступно с версии:0.8.0

Path to the key file.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-client-key-path=""
  • using an environment variable: #!shell export YUCCA_SMTP_CLIENT_KEY_PATH=""
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
key_path = ""

skip_verify​

Доступно с версии:0.8.0

Verify the SMTP server's SSL certificate.

Default false

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-client-skip-verify=""
  • using an environment variable: #!shell export YUCCA_SMTP_CLIENT_SKIP_VERIFY=""
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_client]
skip_verify = ""

smtp_server​

Built-in SMTP server settings for receiving motion detection notifications from cameras.

enabled​

Доступно с версии:0.8.0

Enable the built-in SMTP server for receiving events from cameras.

Default true

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-server=true
  • using an environment variable: #!shell export YUCCA_SMTP_SERVER_ENABLED=true
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
enabled = true

listen_address​

Доступно с версии:0.8.0

Address on which the SMTP server will run.

Default :1025

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-server-listen-address=:1025
  • using an environment variable: #!shell export YUCCA_SMTP_SERVER_LISTEN_ADDRESS=:1025
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
listen_address = ":1025"

password​

Доступно с версии:0.8.0

Password for connecting to the SMTP server.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-server-password=admin
  • using an environment variable: #!shell export YUCCA_SMTP_SERVER_PASSWORD=admin
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
password = "admin"

username​

Доступно с версии:0.8.0

Login for connecting to the SMTP server.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-server-username=admin
  • using an environment variable: #!shell export YUCCA_SMTP_SERVER_USERNAME=admin
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
username = "admin"

read_timeout​

Доступно с версии:0.8.0

Timeout for reading an incoming message.

Default 1s

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-server-read-timeout=1s
  • using an environment variable: #!shell export YUCCA_SMTP_SERVER_READ_TIMEOUT=1s
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
read_timeout = "1s"

event_window_duration​

Доступно с версии:0.9.0

Length of a new motion detection event.

Default 40s

The value can be defined in one of the following ways:

  • using a launch argument: --smtp-server-event-window-duration=40s
  • using an environment variable: #!shell export YUCCA_SMTP_SERVER_EVENT_WINDOW_DURATION=40s
  • using a configuration file:
# /opt/yucca/yucca.toml
[smtp_server]
event_window_duration = "40s"

security​

Security parameters.

audit_logs 💰​

Доступно с версии:0.10.0 💰 Paid feature, available by subscriptionEnterprise

Enable audit logs.

Default false

The value can be defined in one of the following ways:

  • using a launch argument: --security-audit-logs=false
  • using an environment variable: #!shell export YUCCA_SECURITY_AUDIT_LOGS=false
  • using a configuration file:
# /opt/yucca/yucca.toml
[security]
audit_logs = false

brute_force_login_protection​

Доступно с версии:0.9.0

Enable brute-force login protection.

Default true

The value can be defined in one of the following ways:

  • using a launch argument: --security-brute-force-login-protection=true
  • using an environment variable: #!shell export YUCCA_SECURITY_BRUTE_FORCE_LOGIN_PROTECTION=true
  • using a configuration file:
# /opt/yucca/yucca.toml
[security]
brute_force_login_protection = true

security_password_length​

Доступно с версии:0.9.0

Minimum allowed password length.

Default 3

The value can be defined in one of the following ways:

  • using a launch argument: --security-password-length=3
  • using an environment variable: #!shell export YUCCA_SECURITY_PASSWORD_LENGTH=3
  • using a configuration file:
# /opt/yucca/yucca.toml
[security]
password_length = 3

telemetry​

Telemetry. The Yucca server exposes metrics in prometheus format, which lets you, for example, monitor camera availability with an external monitoring system. You can find a configuration example here.

enabled​

Доступно с версии:0.7.0

Enable exposing metrics in Prometheus format.

Default true

The value can be defined in one of the following ways:

  • using a launch argument: --telemetry=true
  • using an environment variable: #!shell export YUCCA_TELEMETRY_ENABLED=true
  • using a configuration file:
# /opt/yucca/yucca.toml
[telemetry]
enabled = true

listen_address​

Доступно с версии:0.7.0

IP address and port on which telemetry will be available.

Default :9912

The value can be defined in one of the following ways:

  • using a launch argument: --telemetry-listen-address=:9912
  • using an environment variable: #!shell export YUCCA_TELEMETRY_LISTEN_ADDRESS=:9912
  • using a configuration file:
# /opt/yucca/yucca.toml
[telemetry]
listen_address = ":9912"

path​

Доступно с версии:0.7.0

URI for accessing telemetry.

Default /metrics

The value can be defined in one of the following ways:

  • using a launch argument: --telemetry-path=/metrics
  • using an environment variable: #!shell export YUCCA_TELEMETRY_PATH=/metrics
  • using a configuration file:
# /opt/yucca/yucca.toml
[telemetry]
path = "/metrics"

basic_auth_username​

Доступно с версии:0.7.0

Basic auth username for accessing telemetry.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --telemetry-basic-auth-username=admin
  • using an environment variable: #!shell export YUCCA_TELEMETRY_BASIC_AUTH_USERNAME=admin
  • using a configuration file:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_username = "admin"

basic_auth_password​

Доступно с версии:0.7.0

Basic auth password for accessing telemetry.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --telemetry-basic-auth-password=admin
  • using an environment variable: #!shell export YUCCA_TELEMETRY_BASIC_AUTH_PASSWORD=admin
  • using a configuration file:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_password = "admin"

environment_info​

Доступно с версии:0.7.0

Labels for the yucca_environment_info metric.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --telemetry-environment-info=env:test
  • using an environment variable: #!shell export YUCCA_TELEMETRY_ENVIRONMENT_INFO=env:test
  • using a configuration file:
# /opt/yucca/yucca.toml
[telemetry.environment_info]
env = "test"

analytics​

Collect analytics from the server interface using Yandex.Metrika.

yandex_metrika_counter_id​

Доступно с версии:0.10.0

Yandex.Metrika Counter ID. Enabled if defined.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --analytics-yandex-metrika-counter-id=12345678
  • using an environment variable: #!shell export YUCCA_ANALYTICS_YANDEX_METRIKA_COUNTER_ID=12345678
  • using a configuration file:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_counter_id = 12345678

yandex_metrika_webvisor​

Доступно с версии:0.10.0

Enables Webvisor, detailed recordings of user activity on the site: mouse movement, scrolling and clicks.

Default false

The value can be defined in one of the following ways:

  • using a launch argument: --analytics-yandex-metrika-webvisor=true
  • using an environment variable: #!shell export YUCCA_ANALYTICS_YANDEX_METRIKA_WEBVISOR=true
  • using a configuration file:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_webvisor = true

quota 💰​

💰 Paid feature, available by subscriptionEnterprise or Plus

Global resource quotas. Can limit the maximum number of certain resources that can be created/added within a server.

global_stream​

Доступно с версии:0.8.0 💰 Paid feature, available by subscriptionEnterprise

Quota for creating streams.

No limit by default -1

The value can be defined in one of the following ways:

  • using a launch argument: --quota-global-stream=-1
  • using an environment variable: #!shell export YUCCA_QUOTA_GLOBAL_STREAM=-1
  • using a configuration file:
# /opt/yucca/yucca.toml
[quota]
global_stream = -1

global_team​

Доступно с версии:0.8.0 💰 Paid feature, available by subscriptionEnterprise

Quota for creating teams.

No limit by default -1

The value can be defined in one of the following ways:

  • using a launch argument: --quota-global-team=-1
  • using an environment variable: #!shell export YUCCA_QUOTA_GLOBAL_TEAM=-1
  • using a configuration file:
# /opt/yucca/yucca.toml
[quota]
global_team = -1

global_user​

Доступно с версии:0.8.0 💰 Paid feature, available by subscriptionEnterprise

Quota for creating users.

No limit by default -1

The value can be defined in one of the following ways:

  • using a launch argument: --quota-global-user=-1
  • using an environment variable: #!shell export YUCCA_QUOTA_GLOBAL_USER=-1
  • using a configuration file:
# /opt/yucca/yucca.toml
[quota]
global_user = -1

team_user​

Доступно с версии:0.8.0 💰 Paid feature, available by subscriptionEnterprise

Quota for the maximum number of users in a team.

No limit by default -1

The value can be defined in one of the following ways:

  • using a launch argument: --quota-team-user=-1
  • using an environment variable: #!shell export YUCCA_QUOTA_TEAM_USER=-1
  • using a configuration file:
# /opt/yucca/yucca.toml
[quota]
team_user = -1

branding 💰​

💰 Paid feature, available by subscriptionEnterprise

Interface branding.

Доступно с версии:0.10.0 💰 Paid feature, available by subscriptionEnterprise

Path to the logo file. You can specify an http(s) URL http:// or a file system path file://.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --branding-app-logo=https://example.com/logo.png
  • using an environment variable: #!shell export YUCCA_BRANDING_APP_LOGO=file:///opt/yucca/logo.png
  • using a configuration file:
# /opt/yucca/yucca.toml
[branding]
app_logo = "file:///opt/yucca/logo.png"

app_title​

Доступно с версии:0.10.0 💰 Paid feature, available by subscriptionEnterprise

Text in the Title field.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --branding-app-title=Yucca
  • using an environment variable: #!shell export YUCCA_BRANDING_APP_TITLE=Yucca
  • using a configuration file:
# /opt/yucca/yucca.toml
[branding]
app_title = "Yucca"

site​

Доступно с версии:0.10.0 💰 Paid feature, available by subscriptionEnterprise

Link to your website.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --branding-site=https://yucca.app
  • using an environment variable: #!shell export YUCCA_BRANDING_SITE=https://yucca.app
  • using a configuration file:
# /opt/yucca/yucca.toml
[branding]
site = "https://yucca.app"

documentation​

Доступно с версии:0.10.0 💰 Paid feature, available by subscriptionEnterprise

Link to the documentation page.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --branding-documentation=https://docs.yucca.app
  • using an environment variable: #!shell export YUCCA_BRANDING_DOCUMENTATION=https://docs.yucca.app
  • using a configuration file:
# /opt/yucca/yucca.toml
[branding]
documentation = "https://docs.yucca.app"

fav_icon​

Доступно с версии:0.10.0 💰 Paid feature, available by subscriptionEnterprise

Path to the Favicon file. You can specify an http(s) URL http:// or a file system path file://.

Not defined by default ""

The value can be defined in one of the following ways:

  • using a launch argument: --branding-fav-icon=https://example.com/favicon.ico
  • using an environment variable: #!shell export YUCCA_BRANDING_FAV_ICON=https://example.com/favicon.ico
  • using a configuration file:
# /opt/yucca/yucca.toml
[branding]
fav_icon = "file:///opt/yucca/favicon.ico"

cluster 💰​

💰 Paid feature, available by subscriptionEnterprise

Parameters related to configuring a cluster (distributed mode).

cluster_enabled​

Доступно с версии:0.10.0 💰 Paid feature, available by subscriptionEnterprise

Enable cluster mode.

Default false

The value can be defined in one of the following ways:

  • using a launch argument: --cluster=true
  • using an environment variable: #!shell export YUCCA_CLUSTER_ENABLED=true
  • using a configuration file:
# /opt/yucca/yucca.toml
[cluster]
enabled = true

cluster_advertise_address​

Доступно с версии:0.10.0 💰 Paid feature, available by subscriptionEnterprise

Address to advertise to other cluster members.

Default 127.0.0.1:9940

The value can be defined in one of the following ways:

  • using a launch argument: --cluster-advertise-address="127.0.0.1:9940"
  • using an environment variable: #!shell export YUCCA_CLUSTER_LISTEN_ADDRESS=24h
  • using a configuration file:
# /opt/yucca/yucca.toml
[cluster]
advertise_address = "127.0.0.1:9940"

cluster_listen_address​

Доступно с версии:0.10.0 💰 Paid feature, available by subscriptionEnterprise

Address for cluster members to connect to.

Default 0.0.0.0:9940

The value can be defined in one of the following ways:

  • using a launch argument: --cluster-listen-address="0.0.0.0:9940"
  • using an environment variable: #!shell export YUCCA_CLUSTER_LISTEN_ADDRESS="0.0.0.0:9940"
  • using a configuration file:
# /opt/yucca/yucca.toml
[cluster]
listen_address = "0.0.0.0:9940"