Hi, I use python oftentimes to write automation scripts on Linux servers. And there's a big pattern in my scripts:
- I *always* use `logging` instead of `print` statements. - I *always* create two stream handlers. One for `sys.stdout` with level `INFO` and one for `sys.stderr` with level `WARN` Well, the levels may variate occasionally, but that's only the rare exception. The reason I do this is simple: Most automation tasks are run via cron. With this setup, I can redirect `stdout` to `/dev/null` and still receive e-mails if things go wrong. And having two handlers gives me more flexibility in my scripts. In one case, I used a different color for error messages for example as this script is run primarily from the shell and having errors stand out has proven to be a good thing. Unfortunately this setup makes `logging.basicConfig` pretty useless. However, I believe that this is something that more people could benefit from. I also believe, that it just "makes sense" to send warnings (and above) to `stderr`, the rest to `stdout`. So I was thinking: "Why does `logging.basicConfig` not behave that way". Naturally, I was thinking of writing a patch against the python codebase and submit it as a suggestion. But before doing so, I would like to hear your thoughts on this. Does it make sense to you too or am I on the wrong track? Are there any downsides I am missing? -- http://mail.python.org/mailman/listinfo/python-list