Why are containerized applications commonly designed to write logs to standard output and standard error?
The container runtime can capture those streams and expose them consistently to logging tools and pipelines.
Standard streams work only when the container has an interactive terminal.
Writing to the streams bypasses the container runtime entirely.
Those streams guarantee that every log remains stored forever.