如何编写自定义控制台日志功能,仅在控制台窗口上输出日志消息在一行(不附加),直到第一个常规日志记录.
progress = ProgressConsoleHandler()
console = logging.StreamHandler()
logger = logging.getLogger('test')
logger.setLevel(logging.DEBUG)
logger.addHandler(console)
logger.addHandler(progress)
logger.info('test1')
for i in range(3):
logger.progress('remaining %d seconds' % i)
time.sleep(1)
logger.info('test2')
Run Code Online (Sandbox Code Playgroud)
这样控制台输出只有三行:
INFO: test1
remaining 0 seconds...
INFO: test2
Run Code Online (Sandbox Code Playgroud)
关于如何实现这个的最佳方法的任何建议?
有没有办法配置python记录器来调用自定义函数并在它记录时将日志消息传递给它?谢谢!