我試圖讓Python登錄的東西,儘管已經讀了logging docs和how-to,我不明白它的行爲。爲什麼調用logging.info會改變我的記錄器打印的內容?
我設置全局日誌級別,然後試圖登錄的東西:
logger = logging.getLogger()
print("Initially should be warn: %d" % logger.getEffectiveLevel())
logger.setLevel(logging.DEBUG)
print("Logger level: %d" % logger.getEffectiveLevel())
logger.info("Maybe I am printed?")
但運行python my_script.py
只是打印:
Initially should be warn: 30
Logger level: 10
但是,如果我添加一行logging.info
調用,例如,
logger = logging.getLogger()
print("Initially should be warn: %d" % logger.getEffectiveLevel())
logger.setLevel(logging.DEBUG)
print("Logger level: %d" % logger.getEffectiveLevel())
logging.info("I am printed")
logger.info("Maybe I am printed?")
然後記錄全部顯示:
Initially should be warn: 30
Logger level: 10
INFO:root:I am printed
INFO:root:Maybe I am printed?
什麼是logging.info
在做什麼?