所以我使用python的内置日志记录模块来执行日志记录。一般来说,我真的很喜欢它的工作方式,但我想知道是否有一个简单的方法来做到以下几点:
我希望在脚本执行时将数据记录到文件和控制台,最好使用logger.info()。我还想将警告/错误记录到控制台,最好使用logger.warning()和logger.error()。那部分很容易。但是,我还想如果警告/错误也没有进入信息日志。
现在根据我的理解,如果我在信息级别设置了处理程序,它将始终在信息级别及更高级别传递任何内容。
我能想到的唯一解决方案是将我的日志记录分成两个独立的记录器,但我想避免这种情况。
答案 0 :(得分:2)
虽然我在询问之前确实做过搜索,但实际上我在这个问题中找到了答案:
答案 1 :(得分:0)
我认为更简洁的方法是根据日志记录的级别在处理程序中以不同方式处理日志消息。 LogRecord
个对象具有levelno
和levelname
属性,因此您几乎可以将logging.error()
与logging.warning()
和logging.debug()
区分开来。
更多详情:http://docs.python.org/library/logging.html#logrecord-objects