电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Python logging模塊進行封裝實現(xiàn)原理解析

瀏覽:2日期:2022-07-14 16:25:42

1. 簡介

      追蹤某些軟件運行時所發(fā)生事件的方法, 可以在代碼中調用日志中某些方法來記錄發(fā)生的事情

一個事件可以用一個可包含可選變量數(shù)據的消息來描述

事件有自己的重要性等級

2. 使用logging日志系統(tǒng)四大組件

loggers日志器 提供應用程序代碼直接使用的接口 handlers處理器 用于將日志記錄發(fā)送到指定的目的位置 filters過濾器 過濾, 決定哪些輸出哪些日志記錄, 其余忽略 formatters格式器 控制日志輸出格式

使用代碼如下

import os, time, logging, sysfrom Common.plugs.get_config import r_configBASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))if sys.platform == 'win32': ENV_CONF_DIR = os.path.join(BASE_DIR, ’Common/conf/env_config.ini’).replace(’/’, ’’)else: ENV_CONF_DIR = os.path.join(BASE_DIR, ’Common/conf/env_config.ini’)log_path = r_config(ENV_CONF_DIR, 'log', 'log_path')class Log: def __init__(self, log_path): self.logName = os.path.join(log_path, ’{0}.log’.format(time.strftime(’%Y-%m-%d’))) def console_log(self, level, message): # 創(chuàng)建一個logger logger = logging.getLogger() logger.setLevel(logging.DEBUG) # 創(chuàng)建一個handler,用于 debug 寫入日志文件 debug_file = logging.FileHandler(self.logName, ’a+’, encoding=’utf-8’) debug_file.setLevel(logging.DEBUG) # 再創(chuàng)建一個handler,用于輸出到控制臺 ch = logging.StreamHandler() ch.setLevel(logging.DEBUG) # 定義handler的輸出格式 formatter = logging.Formatter(’%(asctime)s - %(name)s - %(levelname)s - %(message)s’) debug_file.setFormatter(formatter) ch.setFormatter(formatter) # 給logger添加handler logger.addHandler(debug_file) logger.addHandler(ch) # 記錄一條日志 if level == ’info’: logger.info(message) elif level == ’debug’: logger.debug(message) elif level == ’warning’: logger.warning(message) elif level == ’error’: logger.error(message) elif level == ’critical’: logger.critical(message) logger.removeHandler(ch) logger.removeHandler(debug_file) debug_file.close() def debug(self, message): #最詳細日志信息, 多用于問題診斷 self.console_log(’debug’, message) def info(self, message): #僅次于DEBUG, 多用于記錄關鍵點信息, 確保程序按預期執(zhí)行 self.console_log(’info’, message) def warning(self, message): #低等級故障, 但程序仍能運行, 如磁盤空間不足警告 self.console_log(’warning’, message) def error(self, message): #由于比WARNING嚴重的問題, 導致某些功能不能正常運行時的記錄 self.console_log(’error’, message) def critical(self, message): 嚴重錯誤, 導致應用程序不能繼續(xù)運行時的記錄 self.console_log(’critical’, message)if __name__ == ’__main__’: Log(log_path).info('adasd') Log(log_path).error('dsadasddasd')’’’

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 砂尘试验箱_淋雨试验房_冰水冲击试验箱_IPX9K淋雨试验箱_广州岳信试验设备有限公司 | 意大利Frascold/富士豪压缩机_富士豪半封闭压缩机_富士豪活塞压缩机_富士豪螺杆压缩机 | 高压直流电源_特种变压器_变压器铁芯-希恩变压器定制厂家 | 红酒招商加盟-葡萄酒加盟-进口红酒代理-青岛枞木酒业有限公司 | HEYL硬度计量泵-荧光法在线溶解氧仪-净时测控技术(上海)有限公司 | 智能垃圾箱|垃圾房|垃圾分类亭|垃圾分类箱专业生产厂家定做-宿迁市传宇环保设备有限公司 | 大连海岛旅游网>>大连旅游,大连海岛游,旅游景点攻略,海岛旅游官网 | 地图标注-手机导航电子地图如何标注-房地产商场地图标记【DiTuBiaoZhu.net】 | 消电检公司,消电检价格,北京消电检报告-北京设施检测公司-亿杰(北京)消防工程有限公司 | 咖啡加盟,咖啡店加盟连锁品牌-卡小逗| 水冷散热器_水冷电子散热器_大功率散热器_水冷板散热器厂家-河源市恒光辉散热器有限公司 | 杭州荣奥家具有限公司-浙江办公家具,杭州办公家具厂 | 海德莱电力(HYDELEY)-无功补偿元器件生产厂家-二十年专业从事电力电容器 | 上海心叶港澳台联考一对一培训_上海心叶港澳台联考,港澳台联考一对一升学指导 | 电线电缆厂家|沈阳电缆厂|电线厂|沈阳英联塑力线缆有限公司 | 自动检重秤-动态称重机-重量分选秤-苏州金钻称重设备系统开发有限公司 | 下水道疏通_管道疏通_马桶疏通_附近疏通电话- 立刻通 | 【北京写字楼出租_写字楼租赁_办公室出租网/出售】-远行地产官网 | 一体化隔油提升设备-餐饮油水分离器-餐厨垃圾处理设备-隔油池-盐城金球环保产业发展有限公司 | 喷播机厂家_二手喷播机租赁_水泥浆洒布机-河南青山绿水机电设备有限公司 | 跨境物流_美国卡派_中大件运输_尾程派送_海外仓一件代发 - 广州环至美供应链平台 | 深圳市索富通实业有限公司-可燃气体报警器 | 可燃气体探测器 | 气体检测仪 | 软文推广发布平台_新闻稿件自助发布_媒体邀约-澜媒宝 | 陕西自考报名_陕西自学考试网 | 超声波反应釜【百科】-以马内利仪器 | 超声波气象站_防爆气象站_空气质量监测站_负氧离子检测仪-风途物联网 | 房车价格_依维柯/大通/东风御风/福特全顺/江铃图片_云梯搬家车厂家-程力专用汽车股份有限公司 | TPM咨询,精益生产管理,5S,6S现场管理培训_华谋咨询公司 | 特种阀门-调节阀门-高温熔盐阀-镍合金截止阀-钛阀门-高温阀门-高性能蝶阀-蒙乃尔合金阀门-福建捷斯特阀门制造有限公司 | 导电银胶_LED封装导电银胶_半导体封装导电胶厂家-上海腾烁 | 伶俐嫂培训学校_月嫂培训班在哪里报名学费是多少_月嫂免费政府培训中心推荐 | 油冷式_微型_TDY电动滚筒_外装_外置式电动滚筒厂家-淄博秉泓机械有限公司 | 九爱图纸|机械CAD图纸下载交流中心 | 环比机械| 糖衣机,除尘式糖衣机,全自动糖衣机,泰州市长江制药机械有限公司 体感VRAR全息沉浸式3D投影多媒体展厅展会游戏互动-万展互动 | 高扬程排污泵_隔膜泵_磁力泵_节能自吸离心水泵厂家-【上海博洋】 | 污水/卧式/潜水/钻井/矿用/大型/小型/泥浆泵,价格,参数,型号,厂家 - 安平县鼎千泵业制造厂 | 酒瓶_酒杯_玻璃瓶生产厂家_徐州明政玻璃制品有限公司 | 焊接减速机箱体,减速机箱体加工-淄博博山泽坤机械厂 | NMRV减速机|铝合金减速机|蜗轮蜗杆减速机|NMRV减速机厂家-东莞市台机减速机有限公司 | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 |