setting-up-logging
Setting Up Logging
Prerequisites
This skill extends myai's engineering-principles. Load that first. using-my-skills and engineering-principles are assumed already loaded via myai bootstrap.
For the general logging philosophy, see myai's engineering-principles. This skill covers only Python-specific logging setup: colorlog configuration, file/stdout/stderr logging modes, CLI user output helpers, and QML log routing for PySide6 apps.
Rotating file logging, colored console logging, and colored non-log output. Uses colorlog for prefix-only coloring (log prefix is colored, message text stays default). Includes silence_noisy_loggers() for pinning noisy third-party loggers at WARNING.
Copy shared/logging/.
Key Principle
File logging is always on — it's the durable record for post-mortem debugging. Stdout is lost on terminal close; file logs survive.
Console logging is for modes where no human reads stdout directly. When you launch a GUI app from terminal or run a server in a container, stdout logs are useful — they show real-time output during development and serve as container log transport (Docker/systemd capture stdout).