Valerio Pachera wrote: > Ho notato un comportamento piuttosto ambiguo di python 2.5 su debian > lenny.
Nel senso che non l'hai notato su altre versioni? O hai provato solo quella? > Un semplice script con un ciclo infinito e uno sleep di 60 secondi > che stampa la data ed ora attuali. > > script.py >> /var/log/myscript.log 2>&1 > > Se provo a visualizzare il contenuto del file tramite cat o less lo > vedo vuoto. > Se interrompo lo script tramite ctrl+c, vedo comparire i print delle > deta ed il trace back del ctrl+c. Le deta? ;-) > A dire il vero, non sempre fa così. A volte, il file di log risulta > leggibile (cioè vedo i print delle date) ma, ad un certo punto, le > fate smettono di essere scritte. Le fate? ;-) > Il processo python è ancora attivo. > Sembra proprio che si interrompa la redirezione. > Nota: non c'è logrotate su quel file di log. Sembra il buffering, prova a passare l'opzione "-u" al comando: $ python -u script.py >> /var/log/myscript.log 2>&1 > Un mio amico consiglia di scrivere i file di log damite l'oggetto file > di python: > f = open('/var/log/myscript.log') > > Questa soluzione però non mi entusiasma. Se fai così, devo chiamare f.flush() dopo f.write(), o meglio ancora usare il modulo standard "logging", anzi è probabilmente il modo migliore in generale. -- Nicola Larosa - http://www.tekNico.net/ Articles in the literature of procrastination often allude to the author's own problems with finishing the piece. (This article will be no exception.) - James Surowiecki, October 2010 _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python