2012-05-22 22 views

Respuesta

9

Será más fácil de evitar el uso basicConfig() en su caso - acaba de crear el manejador y añadirlo mediante programación (asegurando que el código se ejecuta sólo una vez), por ejemplo:

root_logger= logging.getLogger() 
root_logger.setLevel(logging.DEBUG) # or whatever 
handler = logging.FileHandler('test.log', 'w', 'utf-8') # or whatever 
handler.setFormatter = logging.Formatter('%(name)s %(message)s') # or whatever 
root_logger.addHandler(handler) 

Eso es más o menos lo basicConfig() hace .

3

respuesta de Vinay era muy útil, pero para que funcione tuve que modificar la sintaxis:

root_logger= logging.getLogger() 
root_logger.setLevel(logging.DEBUG) # or whatever 
handler = logging.FileHandler('test.log', 'w', 'utf-8') # or whatever 
formatter = logging.Formatter('%(name)s %(message)s') # or whatever 
handler.setFormatter(formatter) # Pass handler as a parameter, not assign 
root_logger.addHandler(handler) 
Cuestiones relacionadas