2012-06-21 39 views
2

我对日志记录中的这个筛选器事物感到非常困惑。我已阅读文档和日志记录。
我有一个应用程序写在几个文件。每个文件都有一个类及其例外。
- 主文件:MCM
- 在MCM我导入配置,并启动它的类
- 在配置中的I导入rosApi并启动它的类python日志记录筛选器

我想达到的目标:
- 在主文件,自定我想记录哪些模块及其级别。
- 一个处理器。可在主文件中配置

这个想法是,我打算在一个文件中打开和关闭给定模块的调试,每个运行时可定制,并将选项传递给主文件。

例如:
如果我传递了-d,它将(另外)从配置程序打印所有调试信息,但不打印rosApi。
如果我通过-D将打印从配置器和rosApi所有调试

+0

你应该举例说明你所尝试过的。 –

回答

0

我要做的就是创建一个记录器模块,这些方针的东西:

import os 
import logging 

logger = logging.getLogger() 
fh = logging.handlers.RotatingFileHandler(logfile, maxBytes=10000000, backupCount=10) 
fm = logging.Formatter('%(asctime)s %(module)s %(levelname)s %(message)s') 
fh.setFormatter(fm) 
logger.addHandler(fh) 
level = os.environ['LOGGING'].upper() 
level = getattr(logging, level) 
logging.getLogger().setLevel(level) 

然后我在上面做一个import logger我所有的模块。