使用logging模塊記錄腳本日誌

在平常咱們寫腳本調試時,對通常功能不復雜的腳本,咱們通常用print函數來打印關鍵變量值,來判斷程序是不是正常運行,但若是作教大的項目,用這種方法就顯得力不從心,因此這時候咱們就要用到功能強大的logging 模塊了,再講例子以前,咱們先介紹下logging模塊日誌級別,如下表列出了logging定義的級別劃分:python

圖片

對於某個級別的日誌,只有日誌記錄器配置能夠發佈該級別的消息時,纔會發佈這個消息,例如:若是一個消息級別是CRITICAL,而日子記錄器記錄的是ERROR,這個消息會發出,由於50>40,反之若是是WARNING,就不會記錄日誌,由於30<40,說完日誌級別,咱們來看看,若是記錄日誌信息,咱們看腳本:app

#!/usr/bin/evn pythonide

 

import logging函數

 

 

logfile = 'log.txt'學習

 

logging.basicConfig(filename=logfile,spa

                    format = "%(levelname)-10s %(asctime)s %(message)s",調試

                    level=logging.INFO日誌

                   )orm

 

logging.info('This test script')blog

 

#show log.txt

f = open('log.txt')

print f.read()

f.close()


運行結果:


INFO       2016-03-16 23:18:15,640 This test script

INFO       2016-03-16 23:18:28,632 This test script

INFO       2016-03-16 23:19:18,269 This test script

INFO       2016-03-16 23:19:33,694 This test script

basicConfig()函數是用於執行根記錄器的基本配置,經常使用關鍵字有:

filename:指定日誌文件名稱

format:用於生成日誌的格式

level :指定日誌級別。

這三個參數裏format用於生成日誌的格式,例如咱們腳本用到的%(asctime)s表示執行日誌記錄是調用ASCII格式的日期和時間,%(message)s是記錄的消息,format功能很是強大,咱們能夠利用format的組合生成咱們須要的日誌格式,這篇就到這裏,最後我談下對python模塊的學習,無論標準庫仍是第三方庫,對學習的模塊要常常用,直到熟練的程度。

相關文章
相關標籤/搜索