Wish: Allow all log Handlers to accept the level argument
Jean-Michel Pichavant
jeanmichel at sequans.com
Thu May 24 06:48:17 EDT 2012
Peter Otten wrote:
> Jean-Michel Pichavant wrote:
>
>
>> Fayaz Yusuf Khan wrote:
>>
>>> Jean-Michel Pichavant wrote:
>>>
>>>
>>>> Meanwhile you can shorten the code this way:
>>>>
>>>> root.addHandler(FileHandler('debug.log'))
>>>> root.handlers[-1].setLevel(DEBUG)
>>>>
>>>>
>>>>
>>> Eh? Readability was the aim.
>>>
>>>
>> I fail to see how it's not readable, code is short and no magic is
>> involved provided you know about slicing list items. Anyway, to answer
>>
>
> You have to know or verify that .addHandler() appends to the .handlers list,
> you have to check if or under which conditions
>
> h = SomeHandler()
> root.addHandler(h)
> assert h is root.handlers[-1]
>
> can fail. In short, if I see such a hack my trust in the author of that code
> is significantly lowered.
>
>
I now fail to see how it's a hack. handlers is a public attribute of
loggers.
FYI
def addHandler(self, hdlr):
"""
Add the specified handler to this logger.
"""
if not (hdlr in self.handlers):
self.handlers.append(hdlr)
Cheers,
JM
More information about the Python-list
mailing list