Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
登录Python脚本不起作用:导致日志文件为空_Python_Logging - Fatal编程技术网

登录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)
…我希望它能像你所希望的那样工作

请参阅“如何记录日志”页面中的