一、日志分為幾個(gè)級(jí)別?
debug--調(diào)試信息
info--詳細(xì)信息:數(shù)據(jù) 進(jìn)度
warning 警告信息
error 錯(cuò)誤信息
critical 致命的 嚴(yán)重的錯(cuò)誤
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、微信小程序定制開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶(hù)創(chuàng)新互聯(lián)還提供了商水免費(fèi)建站歡迎大家使用!
二、實(shí)例
import logging
Formatter對(duì)象 用于決定日志打印的格式
fmt = logging.Formatter("%(asctime)s %(levelname)s Line:%(lineno)s==>%(message)s")
#Handler對(duì)象 將(logger創(chuàng)建的)日志記錄發(fā)送到合適的目的輸出
ch = logging.StreamHandler() # 標(biāo)準(zhǔn)輸出流處理對(duì)象
ch.setFormatter(fmt)
ch.setLevel(logging.WARNING)
fh = logging.FileHandler("1.log") # 文件處理對(duì)象
fh.setFormatter(fmt)
fh.setLevel(logging.WARNING)
#Logger對(duì)象 對(duì)外暴露的接口
logger = logging.Logger("miaomiao",'INFO')
logger.addHandler(ch)
logger.addHandler(fh)
#日志輸出
logger.debug("debug級(jí)別的日志")
logger.info("info級(jí)別的日志")
logger.warning("warning級(jí)別的日志")
logger.error("error級(jí)別的日志")
logger.critical("critical級(jí)別的日志")
三、說(shuō)明
logging模塊常用的類(lèi)主要有以下幾個(gè)
logging.Logger
主要提供應(yīng)用程序代碼直接使用的接口,一般不會(huì)直接實(shí)例化,而是通過(guò)logging.getLogger(name)得到
logging.Handler
日志處理對(duì)象的基類(lèi),不應(yīng)實(shí)例化,被實(shí)例化的應(yīng)該是其子類(lèi),如logging.StreamHandler,它負(fù)責(zé)發(fā)送日志記錄到正確的目標(biāo)
logging.Formatter
它決定了以怎樣的格式來(lái)進(jìn)行打印日志記錄,常用的日志格式如下:
%(name)s
Logger對(duì)象的名字
%(levelname)s
日志級(jí)別的英文表示
%(filename)s
調(diào)用日志輸出函數(shù)的模塊名
%(lineno)s
調(diào)用日志輸出函數(shù)的語(yǔ)句所在的代碼行
%(asctime)s
字符串形式的當(dāng)前時(shí)間
%(message)s
用戶(hù)輸出的消息