python+selenium-日志封裝(logging)


# -*- coding: utf-8 -*-
import logging
import time
import getcwd
import os

def get_log(logname):


#創建一個logger
logger = logging.getLogger(logname)
logger.setLevel(logging.INFO)

#設置日志存放路徑,日志文件名
#獲取本地實際,轉換為設置的格式
rq = time.strftime('%Y%m%d%H%M',time.localtime(time.time()))
#設置所有日志和錯誤日志的存放路徑
path = getcwd.get_cwd()

#通過getcwd.py文件的絕對路徑來拼接日志的存放路徑
all_log_path = os.path.join(path,'Logs/All_Logs/')
error_log_path = os.path.join(path,'Logs/Error_Logs/')

#設置日志文件名
all_log_name = all_log_path + rq + '.log'
error_log_name = error_log_path + rq + '.log'

#創建handler
#創建一個handler寫入所有日志
fh = logging.FileHandler(all_log_name)
fh.setLevel(logging.INFO)
#創建一個handler寫入錯誤日志
eh = logging.FileHandler(error_log_name)
eh.setLevel(logging.ERROR)
#創建一個handler輸出到控制台
ch = logging.StreamHandler()
ch.setLevel(logging.INFO)

#定義日志輸出格式
#以時間-日志器名稱-日志級別-日志內容的形式展示
all_log_formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

#以時間-日志器名稱-日志級別-文件名-函數行數-錯誤內容
error_log_formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(module)s -%(lineno)s - %(message)s')
#將定義好的輸出形式添加到handler
fh.setFormatter(all_log_formatter)
ch.setFormatter(all_log_formatter)
eh.setFormatter(error_log_formatter)


#給logger添加handler
logger.addHandler(fh)
logger.addHandler(eh)
logger.addHandler(ch)
return logger
log1 = get_log('test')#test需要打印日志的項目名稱


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM