为python日志记录添加文件格式化程序

时间:2018-09-07 21:15:36

标签: python

我有以下代码可写入文件:

import logging
log=logging.getLogger('avails')
log_file = 'file.txt'
fh = logging.FileHandler(log_file)
fh.setLevel(logging.INFO)
log.addHandler(fh)

log.info('hello')

这会将单词“ hello”写入文件file.txt。但是,我想对此进行格式化,因此将其写入文件的方式如下:

'format': '[%(asctime)s] %(filename)s:%(lineno)d@%(funcName)s [%(levelname)s] %(message)s'

我将如何添加这种格式,以便将其写入文件?

1 个答案:

答案 0 :(得分:1)

您可以向其中添加一个formatter,如下所示:

import logging
log=logging.getLogger('avails')
log_file = 'file.txt'
fh = logging.FileHandler(log_file)
fh.setLevel(logging.INFO)

# Add Formatting
formatter = logging.Formatter('[%(asctime)s] %(filename)s:%(lineno)d@%(funcName)s [%(levelname)s] %(message)s')
fh.setFormatter(formatter)

log.addHandler(fh)
log.info('hello')

更多信息可以在这里找到:https://docs.python-guide.org/writing/logging/