我已经定义了一个记录器配置-
logconfig: dict = {
'version': 1,
'formatters': {
'default': {
'format': '[%(asctime)s][%(name)s][%(levelname)s] %(message)s',
'datefmt': '%Y-%m-%dT%H:%M:%S%z'
},
'withuuid': {
'format': '[%(asctime)s][%(name)s][%(levelname)s] %(message)s (message2)s',
'datefmt': '%Y-%m-%dT%H:%M:%S%z'
}
},
'handlers': {
'console': {
'class': 'logging.StreamHandler',
'formatter': 'default'
}
},
'loggers': {
'': { # root logger
'level': log_level,
'handlers': ['console']
},
'prm_example_agent': { # Our module
'level': log_level,
'handlers': ['console'],
'propagate': False
},
'prm': { # The PRM library
'level': log_level,
'handlers': ['console'],
'propagate': False
}
}
}
这是我的py文件中的一个示例日志行。
self.logger.info("Destroying fgs " + resource.metadata.id)
。
这是在默认情况下选择默认格式化程序。我想切换到使用我自己的withuuid
格式化程序。如何在py文件本身上实现这一点
您可以使用
logging.setFormatter()
将新格式“推送”和“弹出”到streamHandler
上。假设您已经设置了一个self.log
,并且假设只有一个流处理程序可以执行包装在一个处理多个流处理程序的漂亮函数中:
相关问题 更多 >
编程相关推荐