2
我有一個包依賴於幾個不同的模塊,每個模塊都建立了自己的記錄器。這允許我記錄每條日誌消息的來源,這很有用。更改級別記錄到IPython/Jupyter筆記本
但是,當在IPython/Jupyter筆記本中使用此代碼時,我無法控制打印到屏幕上的內容。具體來說,我收到了許多我不想看到的DEBUG級消息。
如何更改打印到筆記本的日誌級別?
更多信息:
我試圖建立一個根記錄在筆記本如下:
# In notebook
import logging
logging.basicConfig()
logger = logging.getLogger()
logger.setLevel(logging.INFO)
# Import the module
import mymodule
,然後在我的模塊上,我有
# In mymodule.py
import logging
logger = logging.getLogger('mypackage.' + __name__)
logger.setLevel(logging.DEBUG)
logger.propagate = True
# Log some messages
logger.debug('debug')
logger.info('info')
當在筆記本中調用模塊代碼時,我希望日誌得到傳播,然後讓頂部記錄器只打印信息日誌語句。但是調試和信息日誌語句都顯示出來了。
相關鏈接:
- 從this IPython issue,似乎有兩個不同層次記錄一個需要注意的。其中一個設置在
ipython_notebook_config
文件中,僅影響內部IPython日誌記錄級別。另一個是IPython記錄器,可通過get_ipython().parent.log
訪問。 - https://github.com/ipython/ipython/issues/8282
- https://github.com/ipython/ipython/issues/6746