2013-01-15 60 views
0

我有一個Python日誌記錄的問題,我不知道問題是什麼,因爲昨天用於工作的同一行代碼很好。在Python中缺少日誌輸出

因此,例如下面的代碼只爲打印功能產生輸出,但不能用於記錄。

任何想法?

import logging 

if __name__ == '__main__': 
    logging.basicConfig(level = logging.DEBUG) 
    logging.info("Hello, World!") 
    print "Hello, World!" 
+1

'INFO:root:Hello,World! Hello,World!'適合我,它的蟒蛇版本 – avasal

+0

@avasal版本2.7.3,奇怪的是它昨天工作正常。 – Gabor

回答

1

你可以試試這個替代方案:

>>> import logging 
>>> logging.getLogger().setLevel(logging.INFO) 
>>> logging.info("Hello, World!") 
INFO:root:Hello, World! 

這裏要設置到根記錄器的信息級別。

+0

謝謝,解決了這個問題! – Gabor

+0

@Gabor:將它設置爲DEBUG級別應該包含INFO級別的任何內容,所以還有一些額外的事情在這裏進行。 –

+0

@LennartRegebro我認爲問題是logging.basicConfig沒有正確配置記錄器。從日誌記錄文檔「如果根記錄器已經爲它配置了處理程序,則此函數不會執行任何操作。」 – jvallver

0

工作對我來說:

>>> import logging 
>>> logging.basicConfig(level = logging.DEBUG) 
>>> logging.info("Hello, World!") 
INFO:root:Hello, World! 

而且你的代碼在一個文件中:

INFO:root:Hello, World! 
Hello, World! 
+0

當我在代碼中逐行輸入python解釋器時,它起作用,但是當我嘗試運行包含這些語句的文件時,它不起作用。 – Gabor

+0

@Gabor:這也適用於我。 –