[Python] Python logging
Manlio Perillo
manlio_perillo a libero.it
Lun 3 Dic 2007 11:46:35 CET
Daniele Varrazzo ha scritto:
> Giovanni Porcari ha scritto:
>
>> Mah... in effetti ne abbiamo parlato pochi minuti ma dalle sue parole
>> avevo
>> inteso che fosse una cosa drammatica e notoria. Forse ho frainteso io.
>> Mi diceva in buona sostanza che logging non è thread safe e che potrebbe
>> dare grossi problemi.
>
> Non ho mai sentito niente del genere. Il modulo logging non ha bug aperti.
> Vedi se ti dà indicazioni maggiori. Lo sai che il nostro Splendido Presidente
> a volte è un po' duro nei suoi giudizi :)
>
> Per quanto ne so io, il modulo è sicuro. Nella parte di sorgenti che ho letto,
> mi sembra che le zone critiche siano protette da lock. Non l'ho sottoposto a
> chissà che analisi, ma logging è un modulo molto usato da tantissime persone,
> tanto che di logger alternativi non ne è spuntato quasi nessuno. Direi che, se
> non altro, ad essere thread-safe ci prova :)
>
Tempo fa Michele Simionato aveva postato (non su questa mailing list)
questo script:
import logging
import threading
class C(object):
def __init__(self):
print threading.currentThread()
def __del__(self):
print threading.currentThread()
logging.warn('deleted %r' % self)
if __name__ == '__main__':
c = C()
> $python logbug.py
> <_MainThread(MainThread, started)>
> <_DummyThread(Dummy-1, started daemon)>
> Exception exceptions.AttributeError: "'NoneType' object has no attribute 'warn'" in <bound method C.__del__ of <__main__.C object at 0xb7da310c>> ignored
> [...]
Manlio Perillo
More information about the Python
mailing list