簡體   English   中英

登錄python的最佳做法

[英]Best practices for logging in python

我寫了一個簡單的python包,其中包含一組執行簡單操作(數據操作)的功能。 我正在嘗試增強程序包並添加更多日志記錄功能,這使我想到了這個問題。

我應該期望程序包的用戶將python日志記錄模塊的文件描述符或文件處理程序傳遞到程序包的方法中,還是應該讓程序包本身具有自己的日志記錄模塊,而程序包中的方法將使用該模塊。

我可以看到兩者的好處(用戶控件記錄日志,並可以基於同一處理程序維護函數調用流)和缺點(用戶記錄器不夠好),但是在這種情況下,最佳實踐是什么。

在您的模塊中,創建一個記錄器對象:

import logging
LOGGER = logging.getLogger(__name__)

然后在該對象上調用適當的函數:

LOGGER.debug('you probably dont care about this')
LOGGER.info('some info message')
LOGGER.error('whoops, something went wrong')

如果用戶正確配置了日志記錄子系統,那么消息將自動到達用戶希望它們到達的位置(文件,stderr,syslog等)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM