亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

記錄器對象不繼承根級別

記錄器對象不繼承根級別

嚕嚕噠 2023-12-12 10:03:25
在嘗試 python 的日志記錄模塊時,我遇到了一些意想不到的行為。我的猜測是,這是由于我的誤解,而不是錯誤,但我無法弄清楚出了什么問題(并且我在測試之前一直小心地重新啟動python內核,以確保根記錄器僅配置一次。import logginglogging.basicConfig(level=logging.CRITICAL)logger1 = logging.getLogger(__name__)logger1.debug("logger1 debug test")正如預期的那樣,沒有輸出日志消息。如果我按如下方式更改記錄器的級別:logger1.setLevel('DEBUG')logger1.debug("logger1 debug test")我得到預期的輸出:DEBUG:__main__:logger1 debug test但是,當我現在創建一個新的記錄器對象時,它似乎繼承了 logger1 的屬性,而不是 root 的屬性:logger2 = logging.getLogger(__name__)logger2.debug("logger2 debug test")其產生:DEBUG:__main__:logger2 debug test奇怪的是,logger2 仍然將根顯示為父級,但顯示級別為 10:print(logger2.__dict__){'filters': [], 'name': '__main__', 'level': 10, 'parent': <RootLogger root (CRITICAL)>, 'propagate': True, 'handlers': [], 'disabled': False, '_cache': {10: True}, 'manager': <logging.Manager object at 0x00000265147F2B48>}誰能解釋一下為什么 logger2 不默認為 0 (NOTSET) 級別?
查看完整描述

1 回答

?
忽然笑

TA貢獻1806條經驗 獲得超5個贊

問題是,通過嘗試創建與 logger1 同名的 logger2,我實際上并沒有創建新的記錄器對象。



查看完整回答
反對 回復 2023-12-12
  • 1 回答
  • 0 關注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號