日志级别与处理程序级别

时间:2018-01-23 03:36:06

标签: python logging handler

从记录器和处理程序设置日志记录级别有什么区别?

以下代码:

myLogFile

将记录到myLogging = logging.getLogger('myOp') hdlr = logging.FileHandler(myLogFile) hdlr.setLevel(10) myLogging.addHandler(hdlr) myLogging.debug("Message here") ,但另一个不会:

FileHandler.setLevel()

为什么myLogFile不会写入<div class="wrapper"> <div class="content"> <div class="left"></div> <div class="right"></div> </div> </div>

1 个答案:

答案 0 :(得分:1)

logger高于handler。你可以想象handler是一个过滤器。例如,您有一个带有两个处理程序的记录器:

myLogging = logging.getLogger('myOp')
myLogging.setLevel(10)

hdlr1 = xxx
hdlr2 = xxx
hdlr1.setLevel(20)
hdlr2.setLevel(30)

myLogging.addHandler(hdlr1)
myLogging.addHandler(hdlr2)

在这种情况下,logger本身会记录10+hdlr1会记录的信息多于hdlr220+ vs 30+)。

回到你的情况,虽然你设置了hdlr.setLevel(10),但假设你的logger级别为20,这就像一个倒三角形。