diff --git a/backend/logger/formatter.py b/backend/logger/formatter.py index 2172c4b6d..33e303430 100644 --- a/backend/logger/formatter.py +++ b/backend/logger/formatter.py @@ -46,6 +46,11 @@ LOGGING_CONFIG = { "handlers": ["default"], "propagate": False, }, + "uvicorn.access": { + "level": LOGLEVEL, + "handlers": ["default"], + "propagate": False, + }, }, } diff --git a/docker/gunicorn/logging.conf b/docker/gunicorn/logging.conf index 936958657..54b564c43 100644 --- a/docker/gunicorn/logging.conf +++ b/docker/gunicorn/logging.conf @@ -12,7 +12,7 @@ keys=gunicorn_format level=WARNING handlers= -# Gunicorn internal logger +# Gunicorn internal logger (overridden at runtime) [logger_gunicorn] level=INFO handlers=console_gunicorn diff --git a/docker/init_scripts/docker-entrypoint.sh b/docker/init_scripts/docker-entrypoint.sh index 5e8f66241..5392c7b38 100755 --- a/docker/init_scripts/docker-entrypoint.sh +++ b/docker/init_scripts/docker-entrypoint.sh @@ -40,8 +40,10 @@ export ROMM_BASE_PATH=${ROMM_BASE_PATH:-/romm} export ROMM_PORT=${ROMM_PORT:-8080} # Disable nginx access logs when log level is WARNING, ERROR, or CRITICAL -case "${LOGLEVEL:-INFO}" in -WARNING | ERROR | CRITICAL | warning | error | critical) +loglevel="${LOGLEVEL:-INFO}" +loglevel="${loglevel^^}" +case "${loglevel}" in +WARNING | WARN | ERROR | CRITICAL) export NGINX_ACCESS_LOG="access_log off;" ;; *) diff --git a/docker/init_scripts/init b/docker/init_scripts/init index f9d493160..0a8ebb978 100755 --- a/docker/init_scripts/init +++ b/docker/init_scripts/init @@ -93,6 +93,10 @@ start_bin_gunicorn() { # cleanup potentially leftover socket rm /tmp/gunicorn.sock -f + # Wire LOGLEVEL into Gunicorn's logging config so it respects the env var + local gunicorn_level="${LOGLEVEL^^}" + sed -i '/\[logger_gunicorn\]/,/^\[/ s/^level=.*/level='"${gunicorn_level}"'/' /etc/gunicorn/logging.conf + # commands to start our main application and store its PID to check for crashes info_log "Starting backend"