python的logging模块,,logging,日志


logging,日志模块,现在还不会用,先做点笔记。

调用不同级别的日志来打印会发现默认情况下只能输出warning以上级别的日志。

技术分享

也就是说默认情况下只能输出logging.warning(‘something‘),logging.error(‘something‘),logging.critical(‘something‘)而像logging.info(‘something‘)则不会输出

要修改日志输出级别,可以在logging.basicConfig()中修改level级别,如:

import logginglogging.basicConfig(level=logging.DEBUG)logging.debug(‘debug‘)logging.warning(‘warning‘)logging.info(‘info‘)

此时输出:

DEBUG:root:debug
WARNING:root:warning
INFO:root:info

以上只是将日志输出到控制台,还可以将日志输出到文件中,也是使用basicConfig()如:

import logginglogging.basicConfig(level=logging.DEBUG,                    filename=‘log.txt‘,                    filemode=‘w‘)logging.debug(‘debug‘)logging.warning(‘warning‘)logging.info(‘info‘)

此时在控制台没有输出,但是日志已经输出到log.txt文件中:

DEBUG:root:debug
WARNING:root:warning
INFO:root:info

到这里我们已经简单的在控制台和文件中输出了日志,而使用basicConfig输出的日志是有格式的:DEBUG:root:debug,我们还可以使用format来美化格式:

import logginglogging.basicConfig(level=logging.DEBUG,                    filename=‘log.txt‘,                    filemode=‘w‘,                    format=‘%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s:%(message)s‘                    )logging.debug(‘debug‘)logging.warning(‘warning‘)logging.info(‘info‘)

此时输出结果为:

2017-10-13 16:52:06,707 - logging_test.py[line:7] - DEBUG:debug
2017-10-13 16:52:06,707 - logging_test.py[line:8] - WARNING:warning
2017-10-13 16:52:06,707 - logging_test.py[line:9] - INFO:info

python的logging模块

评论关闭