1. 程式人生 > >python遇到的問題:No handlers could be found for logger *

python遇到的問題:No handlers could be found for logger *

以前用的好好的logging,拷貝過來寫新的指令碼時,遇到了這個問題。網上找了半天也沒找到答案。

後來發現問題是這樣產生的:我在try塊裡面定義了logging的控制代碼,但是在except下面使用了這個logging——而此時,如果try 中拋異常時,控制代碼還沒建立,except中的logging就會找不到控制代碼了。

具體程式碼類似這樣:

logger = logging.getLogger()

init_logger(xxx):

#此處定義輸入到檔案、控制檯的控制代碼。。。

xxxx

..................

if __name__ == '__main__':

try:

    init_logger(xxx)

except Exception,ex:

    logger.error(xxxx)

解決 辦法: 把init_logger 函式提到try前面去 就可以了。