Making loggerClass an attribute of the logger manager?

Hi,
recently I had a use case where I wanted to use logging in two completely separate parts of the same process. One of them needs to create instances a specific Logger subclass, while the other is fine with the default loggers.
I got around the problem of the unique root node by using two Managers (and then using Manager.getLogger() instead of getLogger()), but I can only set the loggerClass globally.
Making the loggerClass configurable per manager would solve the problem for me, and AFAICS since most applications don't use different managers anyway, there should not be any detrimental effects. What do you think?
cheers, Georg

Georg Brandl <g.brandl <at> gmx.net> writes:
Making the loggerClass configurable per manager would solve the problem for me, and AFAICS since most applications don't use different managers anyway, there should not be any detrimental effects. What do you think?
Seems reasonable. Apart from the API to set/get, _loggerClass is only used by the manager when instantiating a new logger.
Regards,
Vinay Sajip

Am 25.11.2009 11:32, schrieb Vinay Sajip:
Georg Brandl <g.brandl <at> gmx.net> writes:
Making the loggerClass configurable per manager would solve the problem for me, and AFAICS since most applications don't use different managers anyway, there should not be any detrimental effects. What do you think?
Seems reasonable. Apart from the API to set/get, _loggerClass is only used by the manager when instantiating a new logger.
I've created a patch for this, see http://bugs.python.org/issue7868. I'd like to get this into 2.7 before beta1 :)
Georg
participants (2)
-
Georg Brandl
-
Vinay Sajip