小編這次要給大家分享的是如何使用Python日志logging模塊,文章內(nèi)容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。
10年積累的
成都網(wǎng)站建設(shè)、成都做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先
網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有
桃城免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
logging模塊的介紹:
- 它是一個python標準庫,所以它的通用性很高,所有的python模塊都可以與它合作參與日志記錄。
日志級別:
基本 | 中文意義 | 觸發(fā)情況 |
DEBUG | 調(diào)試 | 調(diào)試時期 |
INFO | 提示 | 正常運行時 |
WARINING | 警告 | 現(xiàn)在可運行,但未來可能發(fā)生錯誤時(例如未來存儲空間可能不足) |
ERROR | 錯誤 | 當程序發(fā)生錯誤,無法執(zhí)行某些功能時 |
CRITICAL | 嚴重的、致命的 | 當程序發(fā)生嚴重錯誤,無法繼續(xù)運行時 |
默認是WARNING。
基本類:
- Loggers :日志器,負責開放接口來調(diào)用功能,比如它負責添加Handlers和Filters 。有默認的Loggers 對象
- Handlers :負責日志記錄的傳輸目的地,比如有FileHandler(寫入目標為文件)和StreamHandler(寫入目標為流,默認為標準輸出流)
- Filters :負責過濾哪些日志是要輸出的 。
- Formatters :負責對日志輸出格式的格式化。
logging模塊的基礎(chǔ)使用:
- 基礎(chǔ)使用使用就是使用默認logger對象的使用。
- 設(shè)置logging,調(diào)用logging.basicConfig()來配置日志信息。 【由這個來看就知道,它是“通用型的,只能設(shè)置一次的”,如果不同部分想使用不同的日志記錄,需要使用logger對象(下面的擴展使用)】
- 可設(shè)置的參數(shù):filename日志文件名,filemode打開文件的方式,format日志的輸出格式,datefmt日期輸出格式,style設(shè)置format的類型,level日志記錄的最低級別,stream輸出流(不與filename并存,filename優(yōu)先),handlers日志處理對象(默認是根處理對象),
- 一般使用的參數(shù):filename日志文件名,format日志的輸出格式,level日志記錄的最低級別,stream設(shè)置輸出流
- filename是日志文件名,就是一個普通文件名
- format是日志的輸出格式,設(shè)置方法下面講
- level的設(shè)置值為debug等值,使用方法為logging.DEBUG,logging.INFO,logging.WARNING,logging.ERROR,logging.CRITICAL
- style影響format的類型,它的值有'%','{','$',默認是'%',不同的style可以識別以下不同的message標識符:%(message)s、{message}、$message
- 輸出日志信息:
- 調(diào)試級別日志信息:logging.debug(信息)
- 提示級別信息:logging.info(信息)
- 警告基本信息:loggin.warning(信息)
- 錯誤級別信息:logging.error(信息)
- 嚴重級別信息:logging.critical(信息)
信息輸出的格式化(指的是logging.info等函數(shù)里面的信息):
這個表述可能不是很清晰,但意義類似程序報錯信息,(假如)普通的異常信息只有一個報錯原因,(那么為了方便觀看)可能還需要一些如錯誤地點,錯誤事件等信息,而這些附加的統(tǒng)一的時間不應(yīng)該由生產(chǎn)錯誤信息的部分來添加(可能有很多個模塊),而應(yīng)該將這個信息給專門做這事的部分來處理(交個formatter來處理)。
1.支持普通字符串%格式化,例如:
logging.info('Started %s'%tag)
文章名稱:如何使用Python日志logging模塊-創(chuàng)新互聯(lián)
文章起源:
http://weahome.cn/article/esdhg.html