引入:Python中有個logging模塊可以完成相關信息的記錄,在debug時用它往往事半功倍
一、日志級別(從低到高):
DEBUG :詳細的信息,通常只出現在診斷問題上
INFO:確認一切按預期運行
WARNING:一個跡象表明,一些意想不到的事情發生了,或表明一些問題在不久的將來(例如。磁盤空間低”)。這個軟件還能按預期工作。
ERROR:更嚴重的問題,軟件沒能執行一些功能
CRITICAL :一個嚴重的錯誤,這表明程序本身可能無法繼續運行
注:這5個等級,也分別對應5種打日志的方法: debug 、info 、warning 、error 、critical。默認的是WARNING,當在WARNING或之上時才被跟蹤。
二、日志輸出:顯示到控制臺或保存到文件中,可以靈活選用
# 這里為了簡便,同時處理:輸出控制臺和保存到文件中 ? import logging ? # 第一步,創建一個logger logger = logging.getLogger() logger.setLevel(logging.INFO) # Log等級總開關 ? # 第二步,創建一個handler,用于寫入日志文件 logfile = './log.txt' fh = logging.FileHandler(logfile, mode='a') # open的打開模式這里可以進行參考 fh.setLevel(logging.DEBUG) # 輸出到file的log等級的開關 ? # 第三步,再創建一個handler,用于輸出到控制臺 ch = logging.StreamHandler() ch.setLevel(logging.WARNING) # 輸出到console的log等級的開關 ? # 第四步,定義handler的輸出格式 formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s") fh.setFormatter(formatter) ch.setFormatter(formatter) ? # 第五步,將logger添加到handler里面 logger.addHandler(fh) logger.addHandler(ch) ? # 日志 logger.debug('這是 logger debug message') logger.info('這是 logger info message') logger.warning('這是 logger warning message') logger.error('這是 logger error message') logger.critical('這是 logger critical message')
三、日志格式說明
logging.basicConfig函數中,可以指定日志的輸出格式format,這個參數可以輸出很多有用的信息,如下:
%(levelno)s: 打印日志級別的數值
%(levelname)s: 打印日志級別名稱
%(pathname)s: 打印當前執行程序的路徑,其實就是sys.argv[0]
%(filename)s: 打印當前執行程序名
%(funcName)s: 打印日志的當前函數
%(lineno)d: 打印日志的當前行號
%(asctime)s: 打印日志的時間
%(thread)d: 打印線程ID
%(threadName)s: 打印線程名稱
%(process)d: 打印進程ID
%(message)s: 打印日志信息
以上這篇Python的log日志功能及設置方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
