Agregue el parámetro de encoding a logging.basicConfig

¿Cómo agrego un parámetro de encoding a logging.basicConfig ?

He encontrado este informe de error que indica que ahora es posible para Python 3.3. Necesito esto para Python 2.7 y el informe de error dice que se debe usar un objeto logging.FileHandler personalizado, pero no puedo hacer que funcione.

Será más fácil evitar el uso de basicConfig() en su caso, solo cree el controlador y añádalo mediante progtwigción (asegurándose de que el código se ejecute solo 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 que hace basicConfig() .

La respuesta de Vinay fue muy útil, pero para hacerlo funcionar tuve que ajustar la syntax:

 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)