import os
import time
import logging
class MyLogger(object):
def __init__(self):
# 第一步: 创建一个日志收集器对象logger
self.logger = logging.getLogger("my_logger")
self.logger.setLevel(logging.DEBUG)
# 第二步: 创建日志输出渠道,并设置等级
# 1. 输出到控制台
sh = logging.StreamHandler()
sh.setLevel(logging.INFO)
# 2. 输出到日志文件
rq = time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime((time.time())))
log_name = rq + '.log'
log_path = os.path.join(os.path.abspath('../'), 'log', log_name)
fh = logging.FileHandler(log_path)
fh.setLevel(logging.INFO)
# 第三步:指定日志输出格式
formatter = logging.Formatter("[%(asctime)s][%(filename)s-->line:%(lineno)d][%(levelname)s] %(message)s")
sh.setFormatter(formatter)
fh.setFormatter(formatter)
# 第四步: 添加日志输出渠道到日志收集器中
self.logger.addHandler(sh)
self.logger.addHandler(fh)
return self.logger
# 创建一个日志收集器对象
my_logger = MyLogger()
Python 二次封装logging模块
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- formatter的格式 日志级别大小关系为:CRITICAL > ERROR > WARNING > INFO ...
- 先注册一个路由模板 下面将几个模块的路由集成到那个路由模板中 第一个模块的路由page1.js 另一个模块的路由p...
- 前提 上一篇 文章,介绍了官方对logging模块的简单介绍及一些基础语法,这篇文章主要介绍将logging用到接...