日誌管理作為軟體專案的通用部分,無論是開發還是自動化測試過程中,都顯得尤為重要。
最初是打算利用python的logging模組來管理日誌的,後來看了些github及其他人的自動化框架設計,做了個比對後,還是決定使用logbook。
這篇部落格,介紹下python中的logbook模組的使用方法,僅供參考。。。
1、檔案安裝
2、pip命令安裝
進入cmd命令列,輸入 pip install logbook 命令進行安裝,安裝成功後,輸入 pip show logbook 命令,檢視相關資訊。
二、logbook簡介
logbook的設計初衷,就是用來取代python的標準庫日誌模組:logging。具體內容可通過下方的鏈結檢視官方文件說明:
官方文件:
三、用法說明
示例**如下:log.py
#**解析:1、定義日誌檔案型別,依次按照時間、日誌等級、測試檔名、函式方法名、行數、具體的資訊來展示;coding=utf-8
import
osimport
sysimport
logbook
from logbook import
logger,streamhandler,filehandler,timedrotatingfilehandler
from logbook.more import
colorizedstderrhandler
deflog_type(record,handler):
log = "
".format(
date = record.time, #
日誌時間
level = record.level_name, #
日誌等級
filename = os.path.split(record.filename)[-1], #
檔名 func_name = record.func_name, #
函式名 lineno = record.lineno, #
行號 msg = record.message #
日誌內容
)
return
log#
日誌存放路徑
log_dir = os.path.join("
log")if
notos.path.exists(log_dir):
os.makedirs(log_dir)
#日誌列印到螢幕
log_std = colorizedstderrhandler(bubble=true)
log_std.formatter =log_type
#日誌列印到檔案
log_file =timedrotatingfilehandler(
os.path.join(log_dir,
'%s.log
' % '
log'),date_format='
%y-%m-%d
', bubble=true, encoding='
utf-8')
log_file.formatter =log_type
#指令碼日誌
run_log = logger("
script_log")
definit_logger():
logbook.set_datetime_format(
"local")
run_log.handlers =
#例項化,預設呼叫
logger = init_logger()
日誌等級:
level
describe
critical
嚴重錯誤,會導致程式退出
error
可控範圍內的錯誤
warning
警告資訊
notice
大多情況下希望看到的記錄
info
大多情況不希望看到的記錄
debug
除錯程式時詳細輸出的記錄
2、定義日誌存放路徑為log資料夾;
3、logbook的日誌輸出方式有2種:列印到螢幕(比較適合除錯時候,正式使用時可以將其注釋掉)和列印輸出到日誌檔案;
4、定義日誌輸出;
5、例項化,方便其他模組呼叫;
可以通過測試**來測試日誌是否列印到了對應的路徑,測試**如下:test_log.py
#測試結果:coding=utf-8
import
osfrom log import
run_log as logger
if__name__ == '
__main__':
logger.info(
"測試log模組,暫時就優化到這一步,後續再改進
")
如上所示,即為logbook的基本使用方法,**僅供參考,具體使用請自行實踐。。。
python列印日誌logbook
import os import sys import logbook from logbook import logger,streamhandler,filehandler,timedrotatingfilehandler from logbook.more import colorizedst...
logbook日誌系統
python中替代logging的日誌系統。不過比之前的logging難理解。先上列印到螢幕上的 和存到日誌檔案中的 usr bin env python3 coding utf 8 from logbook import logger,streamhandler,timedrotatingfile...
Logbook模組 logging的高階封裝版
pip install logbook目前僅封裝了檔案日誌輸出和控制台日誌輸出,可以自定義列印格式。from pathlib2 import path import logbook from logbook import logger,timedrotatingfilehandler from lo...