Refs #80 - Unified Debug Logging System
Create scripts/ci/generate-log-config.sh that maps a single LOG_LEVEL env var to per-container settings.
scripts/ci/generate-log-config.sh
#!/bin/bash # generate-log-config.sh - Generate .env.logging from LOG_LEVEL LOG_LEVEL="${1:-INFO}" # Validate input case "$LOG_LEVEL" in DEBUG|INFO|WARN|ERROR) ;; *) echo "Error: Invalid LOG_LEVEL '$LOG_LEVEL'. Must be DEBUG, INFO, WARN, or ERROR." && exit 1 ;; esac # Generate mappings cat > .env.logging << EOF # Generated by generate-log-config.sh LOG_LEVEL=$LOG_LEVEL # Backend/OCR (Pino) BACKEND_LOG_LEVEL=$(echo $LOG_LEVEL | tr '[:upper:]' '[:lower:]') # Frontend (Vite) VITE_LOG_LEVEL=$(echo $LOG_LEVEL | tr '[:upper:]' '[:lower:]') # PostgreSQL POSTGRES_LOG_STATEMENT=$(case $LOG_LEVEL in DEBUG) echo "all";; INFO) echo "ddl";; *) echo "none";; esac) POSTGRES_LOG_MIN_DURATION=$(case $LOG_LEVEL in DEBUG) echo "0";; INFO) echo "500";; WARN) echo "1000";; ERROR) echo "-1";; esac) # Redis REDIS_LOGLEVEL=$(case $LOG_LEVEL in DEBUG) echo "debug";; INFO) echo "verbose";; WARN) echo "notice";; ERROR) echo "warning";; esac) # Traefik TRAEFIK_LOG_LEVEL=$LOG_LEVEL EOF echo "Generated .env.logging with LOG_LEVEL=$LOG_LEVEL"
.env.logging
None - can be executed in parallel with #80-C and #80-E
Milestone 1: Foundation
No dependencies set.
The note is not visible to the blocked user.
Parent Issue
Refs #80 - Unified Debug Logging System
Scope
Create
scripts/ci/generate-log-config.shthat maps a single LOG_LEVEL env var to per-container settings.Files to Create/Modify
scripts/ci/generate-log-config.shImplementation Details
Acceptance Criteria
.env.loggingwith correct mappings per containerDependencies
None - can be executed in parallel with #80-C and #80-E
Milestone
Milestone 1: Foundation