【发布时间】:2015-06-27 13:05:43
【问题描述】:
在我的 python 项目中,我有几行以调试级别记录,其他以信息级别记录。现在,当我运行我的代码时,我可以将请求日志级别设置为信息或调试级别,这将记录到一个文件,并且相应地在屏幕上仅显示信息或两个信息/调试消息。
我如何才能将日志设置为始终为调试级别但在屏幕上始终为信息级别?
示例(只是一小部分):
loggername = 'Main.Case.'
self.logger = logging.getLogger(loggername)
self.logger.info('case() - Started')
self.logger.debug('System ready...')
self.logger.debug('File ready...')
self.logger.debug('Memory ready...')
self.logger.info('case() - Ready')
这将仅以信息级别打印(在屏幕和日志文件上):
Main.Case.case() - Started
Main.Case.case() - Ready
我将获得调试级别(在屏幕和日志文件上):
Main.Case.case() - Started
Main.Case.System ready...
Main.Case.File ready...
Main.Case.Memory ready...
Main.Case.case() - Ready
我实际上希望屏幕上始终只有信息级别行和日志文件信息/调试级别!
当我激活调试级别时,我会将所有内容都输出(屏幕/文件)。
有人知道吗??
感谢您的建议。
【问题讨论】:
-
RTM。 python logging docs 向您展示了如何创建流和文件处理程序。使用
setLevel将记录器设置为DEBUG,将处理程序设置为INFO或DEBUG。除了文档,还有很多例子。 -
查看这个可能的副本:stackoverflow.com/questions/6652727/…
-
谢谢,下次我会搜索更多!