The recipe as you pointed out works by logging to both (just using multiple
handlers).
The objective is to log *up to a level* to stdout and the rest to stderr.

See the example console handler here
<https://github.com/mariocj89/cpython/commit/501cfcd0f4cad1e04d87b89784988c52a77a80ad>
and
the filter here
<https://gist.github.com/mariocj89/7d873fc84bf8723f5e2740adbeccde12>.

Good point about just adding it to the how-to.

On 10 February 2018 at 20:20, Chris Angelico <ros...@gmail.com> wrote:

> On Sun, Feb 11, 2018 at 6:29 AM, Mario Corchero <marioc...@gmail.com>
> wrote:
> > Hello All!
> >
> > I got asked how to configure the logging stack to be able to output
> directly
> > to console using both stdout and stderr and I could not really find a
> great
> > answer as adding both as StreamHandlers will result in error and above
> > messages going to stdout.
>
> There's a recipe in the docs that shows how to "fork" to console and file:
>
> https://docs.python.org/3/howto/logging-cookbook.html#logging-to-multiple-
> destinations
>
> I presume that's what you were looking at? Because yes, that'll do
> exactly what you say.
>
> > The usecase is having a cli or app that wants to log to console as other
> > tools. Errors and bove to stderr and normal information to stdout. I know
> > the recommended way in Python is to just use print on simple scripts,
> but it
> > can happen that you import a library you want to see the logs of, and
> > therefore you need to set the logging stack.
> >
> > I have drafted two implementations but I am open to suggestions:
> > 1) A "Console Handler" that uses multiple streams and chooses based on
> the
> > level.
> > 2) An inverted filter that can be used to filter everything above info
> for
> > the stdout Stream handler.
> >
> > What do you people think?
> > If people like it I'll send an issue + PR.
>
> It would be an interesting variant on the recipe to say "debug and
> above, but NOT error and above, goes to this stream". How complex are
> the implementations? Would they fit nicely into the cookbook?
>
> ChrisA
> _______________________________________________
> Python-ideas mailing list
> Python-ideas@python.org
> https://mail.python.org/mailman/listinfo/python-ideas
> Code of Conduct: http://python.org/psf/codeofconduct/
>
_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to