1. 程式人生 > >falsk 專案中日誌設定

falsk 專案中日誌設定

 app/__init__.py:
1
import logging 2 from logging.handlers import RotatingFileHandler 3 4 ''' 5 開發中使用DEBUG級別, 來輸出豐富的除錯資訊. 6 釋出時使用WARN以上級別, 來顯示異常資訊 7 log檔案存滿, 會自動疊加序號, 併產生新的log檔案. 如果檔案存滿了, 就覆蓋原先的檔案 8 ''' 9 # 設定日誌的記錄等級 debug<info<warn<Error<Fatal; 10 logging.basicConfig(level=logging.DEBUG) #
除錯debug級 只記錄level以上級別日誌資訊 11 # 建立日誌記錄器,指明日誌儲存的路徑、每個日誌檔案的最大大小、儲存的日誌檔案個數上限 12 file_log_handler = RotatingFileHandler("log/log", maxBytes=1024 * 1024 * 100, backupCount=10) 13 # 建立日誌記錄的格式 日誌等級 輸入日誌資訊的檔名 行數 日誌資訊    觸發時間 14 formatter = logging.Formatter('%(levelname)s %(filename)s:%(lineno)d %(message)s %(asctime)s
') 15 # 為剛建立的日誌記錄器設定日誌記錄格式 16 file_log_handler.setFormatter(formatter) 17 # 為全域性的日誌工具物件(flask app使用的)新增日誌記錄器 18 logging.getLogger().addHandler(file_log_handler)
  • 日誌等級由低到高:dubug<info<warn<Error<Fatal;
  • 各級別區別(後三個,警告、錯誤、嚴重錯誤,這三者應該都在系統執行時檢測到了一個不正常的狀態):
  1.  debug 級別最低,可以隨意的使用於任何覺得有利於在除錯時更詳細的瞭解系統執行狀態的東東;
  2.  info  重要,輸出資訊:用來反饋系統的當前狀態給終端使用者的;    
  3.  warn, 可修復,系統可繼續執行下去;
  4.  Error, 可修復性,但無法確定系統會正常的工作下去;
  5.  Fatal, 相當嚴重,可以肯定這種錯誤已經無法修復,並且如果系統繼續執行下去的話後果嚴重。
  • 使用--什麼時候使用 info, warn , error ?
  1. info 用於列印程式應該出現的正常狀態資訊, 便於追蹤定位;
  2. warn 表明系統出現輕微的不合理但不影響執行和使用;
  3. error 表明出現了系統錯誤和異常,無法正常完成目標操作。

專案目錄: