日志文件怎么玩——了解一下Python中的logging模塊-創(chuàng)新互聯(lián)

日志文件怎么玩——了解一下Python中的logging模塊


1、如何控制日志格式

導(dǎo)入模塊:

創(chuàng)新互聯(lián)建站于2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目做網(wǎng)站、網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元鋼城做網(wǎng)站,已為上家服務(wù),為鋼城各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792
import logging
import os
import sys
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

basicConfig定義日志格式:

# format 控制輸出日志的格式,levelname和message是固定寫法,levelname是等級名稱,message是輸出字符,level控制輸出的等級
logging.basicConfig(format='%(levelname)s:%(message)s', level=logging.DEBUG)
# 注意:每個文件的日志格式只能配置一次,即一個py文件里只能出現(xiàn)一次,而且只允許放在執(zhí)行語句之前。
word = 'Hello, world!'
# 字符串的格式輸出,%s引用word字符串
logging.warning('%s I love python!', word)
# asctime是當(dāng)前時間,默認(rèn)level是logging.warning
logging.basicConfig(format='%(asctime)s %(message)s')
# lineno代表代碼行數(shù)
logging.basicConfig(level=logging.DEBUG, format='%(lineno)d - %(filename)s - %(asctime)s - %(name)s - %(levelname)s - %(message)s')

2、必須的控制臺和文件對象

def log_log(logger_name='LOG-LOG', log_file=os.path.join(BASE_DIR, 'log', 'log.log'), level=logging.DEBUG):
    '生成指定日志格式的日志對象'
    # 日志對象,需要個日志名兒
    logger = logging.getLogger(logger_name)
    logger.setLevel(level)
    # 控制臺對象
    ch = logging.StreamHandler()
    ch.setLevel(level)
    # 文件對象
    fh = logging.FileHandler(filename=log_file, encoding='utf-8')
    # 創(chuàng)建 formatter
    formatter = logging.Formatter('%(asctime)s %(filename)s [line:%(lineno)d] %(name)s %(levelname)s %(message)s')
    # 添加 formatter
    ch.setFormatter(formatter)
    fh.setFormatter(formatter)
    # 把 ch, fh 添加到 logger
    logger.addHandler(ch)
    logger.addHandler(fh)
    return logger

3、完成了,測試一下

def main():
    # 測試
    logger = log_log()
    logger.debug('debug message')
    logger.info('info message')
    logger.warn('warn message')
    logger.error('error message')
    logger.critical('critical message')

if __name__ == '__main__':
    main()

4、禁止所有日志輸出

# 禁止所有日志輸出
logging.disable(logging.CRITICAL)

是不是很簡單!

本代碼來源于51CTO課程:python全棧開發(fā)高薪就業(yè)班

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

文章題目:日志文件怎么玩——了解一下Python中的logging模塊-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://muchs.cn/article12/cdsggc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站收錄網(wǎng)頁設(shè)計公司、商城網(wǎng)站、域名注冊、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)