1、logging模塊使用方法
logger提供了應用程序可以直接使用的接口;
handler將(logger創建的)日誌記錄發送到合適的目的輸出;
filter提供了細度設備來決定輸出哪條日誌記錄;
formatter決定日誌記錄的最終輸出格式。
import logging
logger = logging.getLogger("test") # 定義對應的程序模塊名name,默認是root
logger.setLevel(logging.DEBUG) # 指定最低的日誌級別 critical > error > warning > info > debug
consol_haddler = logging.StreamHandler() # 日誌輸出到屏幕控制檯
consol_haddler.setLevel(logging.INFO) # 設置日誌等級
file_haddler = logging.FileHandler("log.txt") # 向文件log.txt輸出日誌信息
file_haddler.setLevel(logging.WARNING) # 設置輸出到文件最低日誌級別
formatter = logging.Formatter("%(asctime)s %(name)s- %(levelname)s - %(message)s")
# %(asctime)s 字符串形式的當前時間。默認格式是 “2003-07-08 16:49:45,896”。逗號後面的是毫秒
# %(name)s 自定義的模塊名
consol_haddler.setFormatter(formatter) # 選擇一個輸出格式,可以定義多個輸出格式
file_haddler.setFormatter(formatter)
logger.addHandler(file_haddler) # 增加指定的handler
logger.addHandler(consol_haddler)
logger.debug("test1")
logger.info("test2")
logger.warning("test3")
logger.error("test4")
控制檯輸出結果如下圖:
log.txt輸入結果如下圖: