



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第PythonLog文件大小設置及備份的方法先創建日志記錄器(logging.getLogger),然后再設置日志級別(logger.setLevel),
接著再創建日志文件,也就是日志保存的地方(logging.FileHandler),然后再設置日志格式(logging.Formatter),
最后再將日志處理程序記錄到記錄器(addHandler)
def__init__(self):
self.__now_time=datetime.now().strftime('%Y-%m-%d')#當前日期格式化
self.__all_log_path=os.path.join(log_path,self.__now_time+"-all"+".log")#收集所有日志信息文件
self.__error_log_path=os.path.join(log_path,self.__now_time+"-error"+".log")#收集錯誤日志信息文件
self.__logger=logging.getLogger()#創建日志記錄器
self.__logger.setLevel(logging.DEBUG)#設置默認日志記錄器記錄級別
@staticmethod
def__init_logger_handler(log_path):
創建日志記錄器handler,用于收集日志
:paramlog_path:日志文件路徑
:return:日志記錄器
#寫入文件,如果文件超過1M大小時,切割日志文件,僅保留3個文件
logger_handler=RotatingFileHandler(filename=log_path,maxBytes=1*1024*1024,backupCount=3,encoding='utf-8')
returnlogger_handler
@staticmethod
def__init_console_handle():
"""創建終端日志記錄器handler,用于輸出到控制臺"""
console_handle=colorlog.StreamHandler()
returnconsole_handle
def__set_log_handler(self,logger_handler,level=logging.DEBUG):
設置handler級別并添加到logger收集器
:paramlogger_handler:日志記錄器
:paramlevel:日志記錄器級別
logger_handler.setLevel(level=level)
self.__logger.addHandler(logger_handler)
def__set_color_handle(self,console_handle):
設置handler級別并添加到終端logger收集器
:paramconsole_handle:終端日志記錄器
:paramlevel:日志記錄器級別
console_handle.setLevel(logging.DEBUG)
self.__logger.addHandler(console_handle)
@staticmethod
def__set_color_formatter(console_handle,color_config):
設置輸出格式-控制臺
:paramconsole_handle:終端日志記錄器
:paramcolor_config:控制臺打印顏色配置信息
:return:
formatter=colorlog.ColoredFormatter(default_formats["color_format"],log_colors=color_config)
console_handle.setFormatter(formatter)
@staticmethod
def__set_log_formatter(file_handler):
設置日志輸出格式-日志文件
:paramfile_handler:日志記錄器
formatter=logging.Formatter(default_formats["log_format"],datefmt='%a,%d%b%Y%H:%M:%S')
file_handler.setFormatter(formatter)
@staticmethod
def__close_handler(file_handler):
關閉handler
:paramfile_handler:日志記錄器
file_handler.close()
def__console(self,level,message):
"""構造日志收集器"""
all_logger_handler=self.__init_logger_handler(self.__all_log_path)#創建日志文件
error_logger_handler=self.__init_logger_handler(self.__error_log_path)
console_handle=self.__init_console_handle()
self.__set_log_formatter(all_logger_handler)#設置日志格式
self.__set_log_formatter(error_logger_handler)
self.__set_color_formatter(console_handle,log_colors_config)
self.__set_log_handler(all_logger_handler)#設置handler級別并添加到logger收集器
self.__set_log_handler(error_logger_handler,level=logging.ERROR)
self.__set_color_handle(console_handle)
iflevel=='info':
self.__(message)
eliflevel=='debug':
self.__logger.debug(message)
eliflevel=='warning':
self.__logger.warning(message)
eliflevel=='error':
self.__logger.error(message)
eliflevel=='critical':
self.__logger.critical(message)
self.__logger.removeHandler(all_logger_handler)#避免日志輸出重復問題
self.__logger.removeHandler(error_logger_handler)
self.__logger.removeHandler(console_handle)
self.__close_handler(all_logger_handler)#關閉handler
self.__close_handler(error_logger_handler)
defdebug(self,message):
self.__console('debug',message)
definfo(self,message):
self.__console('info',message)
defwarning(self,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 青少年控煙教育工作計劃
- 七年級下冊班主任班級紀律維護計劃
- 鋼結構冬季施工機械安拆措施
- 機電安裝工程資源投入計劃及保障措施
- 以小說為翼翱翔審美之空:高中語文閱讀教學新探
- 以多元智力理論賦能小學數學第一學段教學:策略與實踐
- 森林防火災害預防心得體會
- 甲亢危象搶救流程中的心理疏導他
- 護理質量提升中的患者主動參與流程
- 破產管理人審計配合計劃
- GB/T 8685-2008紡織品維護標簽規范符號法
- 網電部管理重點(中)
- 醫療器械行業市場部人員崗位職責
- 旅行社導游帶團操作流程
- 部編版小學道德與法治三年級下冊期末質量檢測試卷【含答案】5套
- 怎樣當好一名師長
- DB21T 3354-2020 遼寧省綠色建筑設計標準
- 新生兒復蘇解析課件
- (完整版)重大危險源清單及辨識表
- ABI7500熒光定量PCR儀標準操作規程
- 11級設計題目寶豐紅四煤礦
評論
0/150
提交評論