Python之日誌處理(logging模組)

2022-10-10 13:42:09 字數 1400 閱讀 7440

程式除錯

了解軟體程式運**況,是否正常

軟體程式執行故障分析與問題定位

debug:最詳細的日誌資訊,典型應用場景是 問題診斷

info:資訊詳細程度僅次於debug,通常只記錄關鍵節點資訊,用於確認一切都是按照我們預期的那樣進行工作

warning:當某些不期望的事情發生時記錄的資訊(如,磁碟可用空間較低),但是此時應用程式還是正常執行的

error:由於乙個更嚴重的問題導致某些功能不能正常執行時記錄的資訊

critical:當發生嚴重錯誤,導致應用程式不能繼續執行時記錄的資訊

開發應用程式或部署開發環境時,可以使用debug或info級別的日誌獲取盡可能詳細的日誌資訊來進行開發或部署除錯;應用上線或部署生產環境時,應該使用warning或error或critical級別的日誌來降低機器的i/o壓力和提高獲取錯誤日誌資訊的效率。日誌級別的指定通常都是在應用程式的配置檔案中進行指定的

事件發生時間

事件發生位置

事件的嚴重程度--日誌級別

事件內容

函式說明

logging.debug(msg, *args, **kwargs)建立一條嚴重級別為debug的日誌記錄

logging.info(msg, *args, **kwargs)建立一條嚴重級別為info的日誌記錄

logging.warning(msg, *args, **kwargs)建立一條嚴重級別為warning的日誌記錄

logging.error(msg, *args, **kwargs)建立一條嚴重級別為error的日誌記錄

logging.critical(msg, *args, **kwargs)建立一條嚴重級別為critical的日誌記錄

logging.log(level, *args, **kwargs)建立一條嚴重級別為level的日誌記錄

logging.basicconfig(kwargs)對root logger進行一次性配置

其中logging.basicconfig(kwargs)函式用於指定「要記錄的日誌級別」、「日誌格式」、「日誌輸出位置」、「日誌檔案的開啟模式」等資訊,其他幾個都是用於記錄各個級別日誌的函式。

filename指定日誌輸出目標檔案的檔名,指定該設定項後日誌信心就不會被輸出到控制台了

filemode指定日誌檔案的開啟模式,預設為'a'。需要注意的是,該選項要在filename指定時才有效

format指定日誌格式字串,即指定日誌輸出時所包含的字段資訊以及它們的順序。logging模組定義的格式字段下面會列出。

datefmt指定日期/時間格式。需要注意的是,該選項要在format中包含時間欄位%(asctime)s時才有效

level指定日誌器的日誌級別

參考文件:

python之日誌配置

日誌 日誌是記錄軟體執行狀態的一種方法,對於軟體的除錯等工作有極大作用。通常我們想將軟體的執行狀態呈現出來,比如輸出到螢幕上,或者寫到檔案中,或者發到網路上等等,這時就需要有我們自己的日誌記錄。在python中的logging日誌庫設計的非常好,它可以幫助我們完成相應的日誌記錄設計。對於部分人來說l...

python之日誌模組

import logging logging.basicconfig 1.日誌輸出位置 a.中端b.檔案 filename d pyt 學習 python基礎操作 access.log 不指定,預設列印到中端 2.如何自定義日誌格式 format asctime s name s levelname...

Python之日誌 logging模組

典型的日誌記錄的步驟是這樣的 建立logger 建立handler 定義formatter 給handler新增formatter 給logger新增handler import logging 1 建立乙個logger logger logging.getlogger mylogger logge...