现在的位置: 首页 > 综合 > 正文

python输出日志到控制台和文件

2018年12月16日 ⁄ 综合 ⁄ 共 1123字 ⁄ 字号 评论关闭

使用配制文件的方法,配制文件logging.conf的内容如下:


[handlers]

keys=fileHandler,consoleHandler

[formatters]
keys=fileFormatter,consoleFormatter

[logger_root]
level=DEBUG
handlers=fileHandler

[logger_fileExample]
level=DEBUG
handlers=fileHandler
qualname=fileExample
propagate=0

[handler_fileHandler]
class=FileHandler
level=DEBUG
formatter=fileFormatter
filemode='w'
args=("myapp.log", "a")

[logger_consoleExample]
level=DEBUG
handlers=consoleHandler
qualname=consoleExample
propagate=0

[handler_consoleHandler]
class=StreamHandler
level=DEBUG
formatter=consoleFormatter
args=(sys.stdout,)

[formatter_fileFormatter]
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s
datefmt=

[formatter_consoleFormatter]
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s
datefmt=

这个配制文件同时指明了输出到控制台和文件的参数。

测试代码如下:


import logging
import logging.config

logging.config.fileConfig('logging.conf')

logger1 = logging.getLogger('fileExample')
logger1.debug('debug message')

logger2 = logging.getLogger('consoleExample')
logger2.debug('debug message')

参考资料:

1.python官方文档https://docs.python.org/2/howto/logging.html#logging-advanced-tutorial

2.python 的日志logging模块学习 http://blog.csdn.net/yatere/article/details/6655445

抱歉!评论已关闭.