En mi proyecto actual hay miles de líneas de código que se parece a esto:Redefiniendo registrador raíz de la tala
logging.info("bla-bla-bla")
no quiero cambiar todas estas líneas, pero me gustaría cambiar el comportamiento del registro. Mi idea está cambiando registrador de la raíz a la otra Experimental
registrador, que se configura mediante el archivo ini:
[loggers]
keys = Experimental
[formatter_detailed]
format = %(asctime)s:%(name)s:%(levelname)s %(module)s:%(lineno)d: %(message)s
[handler_logfile]
class = FileHandler
args = ('experimental.log', 'a')
formatter = detailed
[logger_Experimental]
level = DEBUG
qualname = Experimental
handlers = logfile
propagate = 0
Ahora fijar el nuevo registrador de la raíz se hace por este pedazo de código:
logging.config.fileConfig(path_to_logger_config)
logging.root = logging.getLogger('Experimental')
está redefiniendo del root logger seguro? Tal vez hay una manera más conveniente?
He intentado usar google y examiné las preguntas de stackoverflow, pero no encontré la respuesta.
Primero. ¿Esto funcionó? ¿Tienes un problema real? Segundo. Definir "más conveniente" Dos líneas de código parecen muy convenientes. ¿Cuánto más conveniente puedes imaginar? –
¡Funciona! Pero sospecho, esto parece un truco. "Más conveniente" significa: "usar alguna característica estándar del módulo de registro". Lo siento. –
¡Buen hombre! El formateo es increíble. –