2014-06-10 82 views
0

如何使用Python'记录'将一切记录到1个文本文件,通过多个模块?登录多个模块

Main.py

import logging 
logging.basicConfig(format='localhost - - [%(asctime)s] %(message)s', level=logging.DEBUG) 
log_handler = logging.handlers.RotatingFileHandler('debug.out', maxBytes=2048576) 


log = logging.getLogger('logger') 
log.addHandler(log_handler) 

import test 

Test.py

import logging 

log = logging.getLogger('logger') 
log.error('test') 

debug.out保持为空。即使在阅读日志记录文档后,我也不确定接下来要尝试什么。

编辑:修正了上面的代码。

回答

1

设置正确的日志记录级别(至少ERROR,如果你想获得级别为ERROR或更高的所有消息),并添加一个处理程序将所有消息写入文件。欲了解更多详情,请看https://docs.python.org/2/howto/logging-cookbook.html

+0

没有工作,请查看我上面的代码。 – cpb2

+1

你的代码是错误的。在Test.py中使用'log = logging.getLogger(__ name __)'。在Main.py中,你必须配置你用'log = logging.getLogger(__ name __)'得到的日志记录对象。还要将您的处理程序添加到此日志记录对象。然后使用'log.error(msg)'和'log.debug(msg)'。只需按照https://docs.python.org/2/howto/logging-cookbook.html中的“在多个模块中使用日志记录”部分中的示例进行操作即可。 –