[英]Writing a header for the log file
我的记录器如下所示:
import logging
logfile = 'name.log'
formatter = logging.Formatter('%(asctime)s\t%(message)s')
def setup_logger(name, log_file, level=logging.INFO):
handler = logging.FileHandler(log_file)
handler.setFormatter(formatter)
logger = logging.getLogger(name)
logger.setLevel(level)
logger.addHandler(handler)
return logger
logger = setup_logger('first_logger', logfile)
logger.info("Col1: {}\t : Col2 {}\t Col3: {}".format(a, str(b), c))
输出如下:
2018-01-01 19:03:23,126 Col1:106 Col2:"some string" Col3: 12
2018-01-01 19:03:24,127 Col1:7676 Col2:"some string" Col3: 80
2018-01-01 19:03:10,12 Col1:2 Col2:"some string" Col3: 7
我想编写记录器,以便获得这样的输出格式:
Timestamp Col1 Col2 Col3
2018-01-01 19:03:23,126 106 "some string" 12
2018-01-01 19:03:24,127 7676 "some string" 80
2018-01-01 19:03:10,12 2 "some string" 7
因此,我不想记录键值,而是将键(列名)打印为标题。
有可能这样做吗?
我同意Norrius的观点,即日志记录可能不是正确的工具,但是如果出于任何原因坚持执行,则可以先记录标头,然后仅记录值:
logger.info("Col1 Col2 Col3")
logger.info("{}\t {}\t {}".format(a, str(b), c))
尽管这也会将时间戳记在标头中,但是您需要在行之间使用格式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.