登录Python脚本不起作用:导致日志文件为空
我有一个具有日志功能的脚本,它停止工作(日志,而不是脚本)。我写了一个小例子来说明这个问题:登录Python脚本不起作用:导致日志文件为空,python,logging,Python,Logging,我有一个具有日志功能的脚本,它停止工作(日志,而不是脚本)。我写了一个小例子来说明这个问题: import logging from os import remove from os.path import exists def setup_logger(logger_name, log_file, level=logging.WARNING): # Erase log if already exists if exists(log_file): remove
import logging
from os import remove
from os.path import exists
def setup_logger(logger_name, log_file, level=logging.WARNING):
# Erase log if already exists
if exists(log_file):
remove(log_file)
# Configure log file
l = logging.getLogger(logger_name)
formatter = logging.Formatter('%(message)s')
fileHandler = logging.FileHandler(log_file, mode='w')
fileHandler.setFormatter(formatter)
streamHandler = logging.StreamHandler()
streamHandler.setFormatter(formatter)
l.setLevel(level)
l.addHandler(fileHandler)
l.addHandler(streamHandler)
if __name__ == '__main__':
setup_logger('log_pl', '/home/myuser/test.log')
log_pl = logging.getLogger('log_pl')
log_pl.info('TEST')
log_pl.debug('TEST')
脚本结束时,创建了test.log文件,但该文件为空
我缺少什么?您的
设置\u记录器
功能指定了警告的(默认)级别
def setup_logger(logger_name, log_file, level=logging.WARNING):
…然后,您将记录两个级别低于警告
的事件,并按应忽略它们:
log_pl.info('TEST')
log_pl.debug('TEST')
如果将调用设置\u记录器
功能的代码更改为:
if __name__ == '__main__':
setup_logger('log_pl', '/home/myuser/test.log', logging.DEBUG)
…我希望它能像你所希望的那样工作
请参阅“如何记录日志”页面中的