Configuração
A configuração pode ser feita por meio de um arquivo de configuração, argumentos de linha de comando ou variáveis de ambiente.
- Arquivo
- Variáveis de ambiente
- Argumentos de linha de comando
- Gerar um arquivo de configuração com os valores padrão:
- TOML
- YAML
/opt/yucca/yucca server --show-config --show-config-format=toml
/opt/yucca/yucca server --show-config --show-config-format=yaml
- Você pode ver todas as variáveis de ambiente disponíveis com o seguinte comando:
/opt/yucca/yucca server --show-config --show-config-format=env
- Você pode ver todos os argumentos de linha de comando disponíveis com o seguinte comando:
/opt/yucca/yucca server --help
Os parâmetros são divididos em seções lógicas (blocos), que correspondem ao prefixo nos argumentos de linha de comando e nas variáveis de ambiente.
server
Parâmetros globais do servidor.
log_level
Nível de log do servidor.
Valores possíveis: panic, fatal, error, warning, info, debug
infoO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--log-level=info - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_LOG_LEVEL=info - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
log_level = "info"
data_dir
Diretório global para armazenar o estado (em caso de uso do sqlite3) e os dados dos streams.
./dataO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--data-dir=/opt/yucca/data/ - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_DATA_DIR=/opt/yucca/data/ - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
data_dir = "/opt/yucca/data/"
alloc_dir
Diretório com os dados dos streams (arquivo de vídeo e outros).
<data_dir>/allocO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--alloc-dir=/opt/yucca/data/alloc/ - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_ALLOC_DIR=/opt/yucca/data/alloc/ - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
alloc_dir = "/opt/yucca/data/alloc/"
state_dir
Diretório com o arquivo do banco de dados (em caso de uso do sqlite3).
<data_dir>/serverO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--state-dir=/opt/yucca/data/server/ - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_STATE_DIR=/opt/yucca/data/server/ - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
state_dir = "/opt/yucca/data/server/"
temp_dir
Diretório tmpfs para dados de curta duração. (aqui são armazenados os chunks rotacionados de um stream ao vivo)
/dev/shm/yuccaO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--temp-dir=/dev/shm/yucca - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_TEMP_DIR=/dev/shm/yucca - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
temp_dir = "/dev/shm/yucca"
alloc_dir_warning_threshold
Percentual limite para o aviso de uso de disco.
Na interface do servidor, todos os administradores verão um aviso; se um cliente SMTP estiver configurado, todos os administradores também receberão uma notificação por E-mail informando que o espaço livre em disco está se esgotando.
80O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--alloc-dir-warning-threshold=80 - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_ALLOC_DIR_WARNING_THRESHOLD=80 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
alloc_dir_warning_threshold = "80"
stats_collection_interval
Intervalo de coleta de estatísticas dos recursos do sistema.
1sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--stats-collection-interval=1s - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_STATS_COLLECTION_INTERVAL=1s - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
stats_collection_interval = "1s"
default_language
Idioma padrão da interface para novos usuários; também será usado na página de login.
Valores possíveis: en, ru, uk, es, pt, tr
enO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--default-language=en - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_DEFAULT_LANGUAGE=en - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
default_language = "en"
domain
Usado para determinar o campo Server ao configurar o recebimento de eventos por E-mail
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--domain=demo.yucca.app - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_DOMAIN=192.168.188.15 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
domain = "demo.yucca.app"
health_check_interval
Intervalo para verificação da disponibilidade das dependências.
"30s"O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--health-check-interval="30s" - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_HEALTH_CHECK_INTERVAL="30s" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
health_check_interval = "30s"
listen_address
Endereço IP e porta em que a interface web ficará disponível.
:9910O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--web.listen-address=:9910 - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_LISTEN_ADDRESS=:9910 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
listen_address = ":9910"
log_file
Caminho para o arquivo de logs; se não informado, será usado o stdout.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--log-file=/var/log/yucca.log - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_LOG_FILE=/var/log/yucca.log - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
log_file = "/var/log/yucca.log"
self_logs
Visualização dos logs do servidor e dos streams na interface, na aba depuração.
trueO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--self-logs=true - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_SELF_LOGS=false - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
self_logs = true
log_buffer_size
Número de últimas mensagens exibidas na interface, na aba depuração.
50O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--log-buffer-size=50 - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_LOG_BUFFER_SIZE=50 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
log_buffer_size = 50
cert_file
Caminho para o arquivo de certificado, em caso de uso de HTTPS.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--cert-file=/opt/yucca/ssl/cert.crt - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_CERT_FILE=/opt/yucca/ssl/cert.crt - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
cert_file = "/opt/yucca/ssl/cert.crt"
cert_key
Caminho para o arquivo de chave, em caso de uso de HTTPS.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--cert-key=/opt/yucca/ssl/cert.key - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_CERT_KEY=/opt/yucca/ssl/cert.key - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
cert_key = "/opt/yucca/ssl/cert.key"
pprof
Ativar a criação de perfil (profiling).
falseO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--pprof=true - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_PPROF=true - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
pprof = true
pprof_listen_address
Endereço IP e porta em que o profiler pprof ficará disponível.
:9911O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--pprof-listen-address=":9911" - usando uma variável de ambiente:
#!shell export YUCCA_SERVER_PPROF_LISTEN_ADDRESS=":9911" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[server]
pprof_listen_address = ":9911"
validate
Flag para verificar a validade da configuração.
O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--validate
Exemplo de uso
./yucca server --config /opt/yucca/yucca.toml --validate
Valid configuration
database
Conexão com o banco de dados.
type
São suportados 2 tipos de banco de dados para armazenar o estado – sqlite3 e postgres. Em instalações pequenas, o sqlite3 é suficiente; com um grande número de streams, recomendamos usar o postgres.
sqlite3O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-type=sqlite3 - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_TYPE=sqlite3 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
type = "sqlite3"
path
Caminho para o arquivo do banco de dados (apenas para sqlite3).
<state_dir>/state.dbO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-path=/opt/yucca/server/state.db - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_PATH=/opt/yucca/server/state.db - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
path = "/opt/yucca/server/state.db"
host
Endereço de conexão com o banco de dados (apenas para postgres).
127.0.0.1:5432O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-host=127.0.0.1:5432 - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_HOST=127.0.0.1:5432 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
host = "127.0.0.1:5432"
name
Nome do banco de dados (apenas para postgres).
yuccaO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-name=yucca - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_NAME=yucca - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
name = "yucca"
user
Nome de usuário para a conexão (apenas para postgres).
postgresO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-user=postgres - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_USER=postgres - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
user = "postgres"
password
Senha do usuário para a conexão (apenas para postgres).
postgresO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-password=postgres - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_PASSWORD=postgres - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
password = "postgres"
ssl_mode
Usar SSL (conexão criptografada) na conexão (apenas para postgres). Valores possíveis: disable, require, verify-full).
disableO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-ssl-mode=disable - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_SSL_MODE=disable - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
ssl_mode = "disable"
busy_timeout
Tempo limite em segundos para aguardar o desbloqueio de uma tabela do SQLite (apenas para sqlite3).
500O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-busy-timeout=500 - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_BUSY_TIMEOUT=500 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
busy_timeout = 500
ca_cert_path
Caminho para o certificado da autoridade certificadora (CA) em caso de uso de SSL (apenas para postgres).
/etc/ssl/certsO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-ca-cert-path=/etc/ssl/certs - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_CA_CERT_PATH=/etc/ssl/certs - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
ca_cert_path = "/etc/ssl/certs"
client_cert_path
Caminho para o arquivo do certificado em caso de uso de SSL (apenas para postgres).
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-client-cert-path=/opt/yucca/ssl/cert.crt - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_CLIENT_CERT_PATH=/opt/yucca/ssl/cert.crt - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
client_cert_path = "/opt/yucca/ssl/cert.crt"
client_key_path
Caminho para o arquivo da chave em caso de uso de SSL (apenas para postgres).
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-client-key-path=/opt/yucca/ssl/cert.key - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_CLIENT_KEY_PATH=/opt/yucca/ssl/cert.key - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
client_key_path = "/opt/yucca/ssl/cert.key"
cache_mode
Parâmetro de cache compartilhado usado na conexão com o banco de dados (apenas para sqlite3). Valores possíveis: private, shared.
sharedO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-cache-mode=shared - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_CACHE_MODE=shared - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
cache_mode = "shared"
conn_max_lifetime
Define o tempo máximo durante o qual uma conexão pode ser reutilizada.
0sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-conn-max-lifetime=0s - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_CONN_MAX_LIFETIME=0s - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
conn_max_lifetime = "0s"
log_queries
Registrar consultas SQL e o tempo de execução.
falseO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-log-queries=false - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_LOG_QUERIES=false - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
log_queries = false
max_open_conn
Número máximo de conexões abertas com o banco de dados (apenas para postgres).
0O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-max-open-conn=0 - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_MAX_OPEN_CONN=0 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
max_open_conn = 0
max_idle_conn
Número máximo de conexões em espera (apenas para postgres).
2O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--database-max-idle-conn=2 - usando uma variável de ambiente:
#!shell export YUCCA_DATABASE_MAX_IDLE_CONN=2 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[database]
max_idle_conn = 2
streams
Parâmetros relacionados ao comportamento dos streams.
archive_download_max_duration
Duração máxima permitida do intervalo de tempo solicitado para download.
24hO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--streams-archive-download-max-duration=24h - usando uma variável de ambiente:
#!shell export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_MAX_DURATION=24h - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[streams]
archive_download_max_duration = "24h"
archive_download_request_lifetime
Tempo de vida do intervalo de arquivo solicitado para download.
Ao baixar intervalos de arquivo, é gerado um arquivo com a duração solicitada, que ficará disponível para download durante o tempo especificado neste parâmetro. Se você estiver baixando intervalos longos com uma velocidade de download baixa, recomendamos aumentar o valor deste parâmetro.
1h0m0sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--streams-archive-download-request-lifetime=6h - usando uma variável de ambiente:
#!shell export YUCCA_STREAMS_ARCHIVE_DOWNLOAD_REQUEST_LIFETIME=1h0m0s - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[streams]
archive_download_request_lifetime = "1h0m0s"
archive_max_depth_hours
Profundidade máxima permitida de armazenamento do arquivo, em horas.
-1O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--streams-archive-max-depth-hours=-1 - usando uma variável de ambiente:
#!shell export YUCCA_STREAMS_ARCHIVE_MAX_DEPTH_HOURS=-1 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[streams]
archive_max_depth_hours = -1
live_on_demand_lease_duration
Tempo de vida da concessão (lease) para um stream ao vivo sob demanda (live on-demand).
Tempo durante o qual o stream live on-demand solicitado continuará funcionando após a última renovação da concessão, ou seja, o tempo de vida da concessão após sua última renovação. A concessão é renovada ao solicitar o status do stream na página de visualização. Quanto menor o valor, mais rápido o stream mudará para o estado de pausa após o fechamento da página de visualização.
1m0sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--streams-live-on-demand-lease-duration=1m0s - usando uma variável de ambiente:
#!shell export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_DURATION=1m0s - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_duration = 1m0s
live_on_demand_lease_interval
Frequência de verificação da concessão ativa para um stream ao vivo sob demanda (live on-demand). O parâmetro deve ser menor que live_on_demand_lease_duration.
30sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--streams-live-on-demand-lease-interval=30s - usando uma variável de ambiente:
#!shell export YUCCA_STREAMS_LIVE_ON_DEMAND_LEASE_INTERVAL=30s - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[streams]
live_on_demand_lease_interval = 30s
playlist_max_duration
Duração máxima permitida do intervalo de tempo solicitado para a playlist M3U8.
3hO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--streams-playlist-max-duration=3h - usando uma variável de ambiente:
#!shell export YUCCA_STREAMS_PLAYLIST_MAX_DURATION=3h - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[streams]
playlist_max_duration = "3h"
ranges_max_duration
Duração máxima permitida do intervalo de tempo solicitado para ranges (intervalo de disponibilidade do arquivo).
168hO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--streams-ranges-max-duration=168h - usando uma variável de ambiente:
#!shell export YUCCA_STREAMS_RANGES_MAX_DURATION=168h - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[streams]
ranges_max_duration = "168h"
uuid_slug
Usar, como identificador público do stream, um UUID gerado.
falseO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--streams-uuid-slug=false - usando uma variável de ambiente:
#!shell export YUCCA_STREAMS_UUID_SLUG=false - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[streams]
uuid_slug = false
executor
Parâmetros de inicialização dos streams.
type
Tipo de executor para gerenciar os streams. Valores disponíveis: exec, docker.
- Exec - o servidor inicia o ffmpeg e monitora seu funcionamento diretamente, sem usar docker nem yucca-worker.
- Docker - (obsoleto e será removido no futuro) para cada stream o servidor inicia um contêiner docker no qual roda o yucca-worker, que por sua vez inicia o ffmpeg e monitora seu funcionamento, reiniciando-o em caso de problemas.
execO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--executor=exec - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_TYPE=docker - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor]
type = "exec"
log_level
Nível de log do executor. Valores possíveis: panic, fatal, error, warning, info, debug).
infoO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--executor-log-level=info - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_LOG_LEVEL=info - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor]
log_level = "info"
executor.exec
Parâmetros adicionais para o tipo exec.
cancel_grace_period
Intervalo de espera para o encerramento de todos os subprocessos em execução (ffmpeg, ffprobe, ...).
5sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-cancel-grace-period=5s - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_CANCEL_GRACE_PERIOD=5s - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
cancel_grace_period = "5s"
ffmpeg_log_level
Nível de log dos processos ffmpeg.
errorO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-ffmpeg-log-level="error" - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_LEVEL="error" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_level = "error"
ffmpeg_log_max_file
Número máximo de arquivos de log que podem existir.
5O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-ffmpeg-log-max-file=5 - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_FILE=5 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_file = 5
ffmpeg_log_max_size
Tamanho máximo do arquivo de log antes de sua rotação e compactação.
"20mb"O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-ffmpeg-log-max-size"20mb" - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_FFMPEG_LOG_MAX_SIZE"20mb" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
ffmpeg_log_max_size ="20mb"
hls_list_size
Tamanho da playlist m3u8 HLS.
5O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-hls-list-size=5 - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_HLS_LIST_SIZE=5 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
hls_list_size = 5
hls_time
Duração desejada do segmento de vídeo dos segmentos HLS, em segundos.
2O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-hls-time=2 - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_HLS_TIME=5 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
hls_time = 5
preview
Ativa a geração de imagens de preview em segundo plano.
trueO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-preview=true - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_PREVIEW=false - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
preview = true
preview_interval
Intervalo de geração das imagens de preview.
5sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-preview-interval=5s - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_PREVIEW_INTERVAL=5s - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
preview_interval = "5s"
probe_interval
Intervalo a partir do qual o stream começa a ser verificado quanto à disponibilidade; o intervalo aumenta
gradualmente (para evitar o problema em que verificações frequentes travam a câmera IP)
até o valor definido em probe_interval_maximum, e o número de tentativas não deve
ultrapassar o valor de probe_retries, caso contrário o stream mudará para o status Failed.
5sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-probe-interval="5s" - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL="5s" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval = "5s"
probe_interval_maximum
Veja a descrição de probe_interval.
1m0sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-probe-interval-maximum="1m0s" - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_PROBE_INTERVAL_MAXIMUM="1m0s" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
probe_interval_maximum = "1m0s"
probe_retries
Veja a descrição de probe_interval.
5O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-probe-retries=5 - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_PROBE_RETRIES=5 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
probe_retries = 5
probe_timeout
Tempo limite para obter informações da fonte.
5O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--exec-probe-timeout="1m0s" - usando uma variável de ambiente:
#!shell export YUCCA_EXECUTOR_EXEC_PROBE_TIMEOUT="1m0s" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[executor.exec]
probe_timeout = "1m0s"
smtp_client
Configurações do cliente SMTP integrado. Responsável pelo envio de notificações aos usuários por e-mail, por exemplo sobre a proximidade do vencimento da licença.
enabled
Ativar o cliente SMTP para o envio de e-mails.
falseO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-client=true - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_CLIENT_ENABLED=true - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_client]
enabled = true
host
Endereço do servidor SMTP.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-client-host="smtp.gmail.com:465" - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_CLIENT_HOST="smtp.yandex.ru:465" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_client]
host = ""
user
Usuário para autenticação no servidor SMTP.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-client-user="" - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_CLIENT_USER="" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_client]
user = ""
password
Senha para autenticação no servidor SMTP.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-client-password="" - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_CLIENT_PASSWORD="" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_client]
password = ""
from_address
Endereço usado no envio de e-mails.
"admin@yucca.localhost"O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-client-from-address="admin@yucca.localhost" - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_CLIENT_FROM_ADDRESS="admin@yucca.localhost" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_client]
from_address = "admin@yucca.localhost"
from_name
Nome usado no envio de e-mails.
"Yucca"O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-client-from-name="Yucca" - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_CLIENT_FROM_NAME="Yucca" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_client]
from_name = "Yucca"
cert_path
Caminho para o arquivo do certificado.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-client-cert-path="" - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_CLIENT_CERT_PATH="" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_client]
cert_path = ""
key_path
Caminho para o arquivo da chave.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-client-key-path="" - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_CLIENT_KEY_PATH="" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_client]
key_path = ""
skip_verify
Verificar o certificado SSL do servidor SMTP.
falseO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-client-skip-verify="" - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_CLIENT_SKIP_VERIFY="" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_client]
skip_verify = ""
smtp_server
Configurações do servidor SMTP integrado para receber notificações de movimento das câmeras.
enabled
Ativar o servidor SMTP integrado para receber eventos das câmeras.
trueO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-server=true - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_SERVER_ENABLED=true - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_server]
enabled = true
listen_address
Endereço em que o servidor SMTP ficará em execução.
:1025O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-server-listen-address=:1025 - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_SERVER_LISTEN_ADDRESS=:1025 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_server]
listen_address = ":1025"
password
Senha para conectar ao servidor SMTP.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-server-password=admin - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_SERVER_PASSWORD=admin - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_server]
password = "admin"
username
Login para conectar ao servidor SMTP.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-server-username=admin - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_SERVER_USERNAME=admin - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_server]
username = "admin"
read_timeout
Tempo limite de leitura de uma mensagem recebida.
1sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-server-read-timeout=1s - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_SERVER_READ_TIMEOUT=1s - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_server]
read_timeout = "1s"
event_window_duration
Duração de um novo evento de detecção de movimento.
40sO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--smtp-server-event-window-duration=40s - usando uma variável de ambiente:
#!shell export YUCCA_SMTP_SERVER_EVENT_WINDOW_DURATION=40s - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[smtp_server]
event_window_duration = "40s"
security
Parâmetros de segurança.
audit_logs 💰
Ativar os logs de auditoria.
falseO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--security-audit-logs=false - usando uma variável de ambiente:
#!shell export YUCCA_SECURITY_AUDIT_LOGS=false - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[security]
audit_logs = false
brute_force_login_protection
Ativar a proteção contra força bruta de senha.
trueO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--security-brute-force-login-protection=true - usando uma variável de ambiente:
#!shell export YUCCA_SECURITY_BRUTE_FORCE_LOGIN_PROTECTION=true - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[security]
brute_force_login_protection = true
security_password_length
Tamanho mínimo permitido para a senha.
3O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--security-password-length=3 - usando uma variável de ambiente:
#!shell export YUCCA_SECURITY_PASSWORD_LENGTH=3 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[security]
password_length = 3
telemetry
Telemetria. O servidor Yucca fornece métricas no formato prometheus, o que permite, por exemplo, monitorar a disponibilidade das câmeras com um sistema de monitoramento externo. Você encontrará um exemplo de configuração aqui.
enabled
Ativar a exposição de métricas no formato Prometheus.
trueO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--telemetry=true - usando uma variável de ambiente:
#!shell export YUCCA_TELEMETRY_ENABLED=true - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[telemetry]
enabled = true
listen_address
Endereço IP e porta em que a telemetria ficará disponível.
:9912O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--telemetry-listen-address=:9912 - usando uma variável de ambiente:
#!shell export YUCCA_TELEMETRY_LISTEN_ADDRESS=:9912 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[telemetry]
listen_address = ":9912"
path
URI de acesso à telemetria.
/metricsO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--telemetry-path=/metrics - usando uma variável de ambiente:
#!shell export YUCCA_TELEMETRY_PATH=/metrics - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[telemetry]
path = "/metrics"
basic_auth_username
Login de autenticação básica para acesso à telemetria.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--telemetry-basic-auth-username=admin - usando uma variável de ambiente:
#!shell export YUCCA_TELEMETRY_BASIC_AUTH_USERNAME=admin - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_username = "admin"
basic_auth_password
Senha de autenticação básica para acesso à telemetria.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--telemetry-basic-auth-password=admin - usando uma variável de ambiente:
#!shell export YUCCA_TELEMETRY_BASIC_AUTH_PASSWORD=admin - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[telemetry]
basic_auth_password = "admin"
environment_info
Labels para a métrica yucca_environment_info.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--telemetry-environment-info=env:test - usando uma variável de ambiente:
#!shell export YUCCA_TELEMETRY_ENVIRONMENT_INFO=env:test - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[telemetry.environment_info]
env = "test"
analytics
Coleta de análises da interface do servidor usando o Yandex.Metrika.
yandex_metrika_counter_id
ID do contador do Yandex.Metrika. Ativado se definido.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--analytics-yandex-metrika-counter-id=12345678 - usando uma variável de ambiente:
#!shell export YUCCA_ANALYTICS_YANDEX_METRIKA_COUNTER_ID=12345678 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_counter_id = 12345678
yandex_metrika_webvisor
Ativa o Webvisor, gravações detalhadas da atividade do usuário no site: movimento do mouse, rolagem e cliques.
falseO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--analytics-yandex-metrika-webvisor=true - usando uma variável de ambiente:
#!shell export YUCCA_ANALYTICS_YANDEX_METRIKA_WEBVISOR=true - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[analytics]
yandex_metrika_webvisor = true
quota 💰
Cotas globais de recursos. Podem limitar o número máximo de determinados recursos que podem ser criados/adicionados no servidor.
global_stream
Cota para a criação de streams.
-1O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--quota-global-stream=-1 - usando uma variável de ambiente:
#!shell export YUCCA_QUOTA_GLOBAL_STREAM=-1 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[quota]
global_stream = -1
global_team
Cota para a criação de equipes.
-1O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--quota-global-team=-1 - usando uma variável de ambiente:
#!shell export YUCCA_QUOTA_GLOBAL_TEAM=-1 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[quota]
global_team = -1
global_user
Cota para a criação de usuários.
-1O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--quota-global-user=-1 - usando uma variável de ambiente:
#!shell export YUCCA_QUOTA_GLOBAL_USER=-1 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[quota]
global_user = -1
team_user
Cota para o número máximo de usuários em uma equipe.
-1O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--quota-team-user=-1 - usando uma variável de ambiente:
#!shell export YUCCA_QUOTA_TEAM_USER=-1 - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[quota]
team_user = -1
branding 💰
Personalização visual (branding) da interface.
app_logo
Caminho para o arquivo do logotipo. Você pode informar uma URL http(s) http:// ou um caminho no sistema de arquivos file://.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--branding-app-logo=https://example.com/logo.png - usando uma variável de ambiente:
#!shell export YUCCA_BRANDING_APP_LOGO=file:///opt/yucca/logo.png - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[branding]
app_logo = "file:///opt/yucca/logo.png"
app_title
Texto no campo Title.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--branding-app-title=Yucca - usando uma variável de ambiente:
#!shell export YUCCA_BRANDING_APP_TITLE=Yucca - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[branding]
app_title = "Yucca"
site
Link para o seu site.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--branding-site=https://yucca.app - usando uma variável de ambiente:
#!shell export YUCCA_BRANDING_SITE=https://yucca.app - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[branding]
site = "https://yucca.app"
documentation
Link para a página de documentação.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--branding-documentation=https://docs.yucca.app - usando uma variável de ambiente:
#!shell export YUCCA_BRANDING_DOCUMENTATION=https://docs.yucca.app - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[branding]
documentation = "https://docs.yucca.app"
fav_icon
Caminho para o arquivo do Favicon. Você pode informar uma URL http(s) http:// ou um caminho no sistema de arquivos file://.
""O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--branding-fav-icon=https://example.com/favicon.ico - usando uma variável de ambiente:
#!shell export YUCCA_BRANDING_FAV_ICON=https://example.com/favicon.ico - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[branding]
fav_icon = "file:///opt/yucca/favicon.ico"
cluster 💰
Parâmetros relacionados à configuração do cluster (modo distribuído).
cluster_enabled
Ativar o modo cluster.
falseO valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--cluster=true - usando uma variável de ambiente:
#!shell export YUCCA_CLUSTER_ENABLED=true - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[cluster]
enabled = true
cluster_advertise_address
Endereço anunciado para os demais membros do cluster.
127.0.0.1:9940O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--cluster-advertise-address="127.0.0.1:9940" - usando uma variável de ambiente:
#!shell export YUCCA_CLUSTER_LISTEN_ADDRESS=24h - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[cluster]
advertise_address = "127.0.0.1:9940"
cluster_listen_address
Endereço para a conexão dos membros do cluster.
0.0.0.0:9940O valor pode ser definido de uma das seguintes formas:
- usando um argumento de inicialização:
--cluster-listen-address="0.0.0.0:9940" - usando uma variável de ambiente:
#!shell export YUCCA_CLUSTER_LISTEN_ADDRESS="0.0.0.0:9940" - usando um arquivo de configuração:
# /opt/yucca/yucca.toml
[cluster]
listen_address = "0.0.0.0:9940"