import logging
class LogUtils:
def __init__(self):
pass
def utils(self):
################################
#logger-笔,写日志的东西
#handler-控制笔抄哪里写,console还是file
#formatter-格式器,控制输出日志的格式
################################
#创建logger 这里全部没有加上self,比如 self.logger 为什么呢? 因为单例
logger = logging.getLogger('yunwen')
# 给logger设置日志级别(这个地方容易写错)
logger.setLevel(level=logging.INFO)
#设置handler,在控制台输出 和 写入文件
handler1 = logging.StreamHandler()
handler2 = logging.FileHandler(filename='logTest.log',mode='w',encoding='utf8')
#这是formatter
fmt1='%(asctime)s %(name)s [%(filename)s %(lineno)d] %(levelname)s %(message)s'
formatter = logging.Formatter(fmt=fmt1)
logger.addHandler(handler1)
logger.addHandler(handler2)
handler1.setFormatter(formatter)
handler2.setFormatter(formatter)
return logger
if __name__ == '__main__':
LogUtils().utils().error('这是类封装')
"""
#默认warning级别
logging.basicConfig(level=logging.ERROR)
logging.debug('this is debug')
logging.info('this is info')
logging.warning('this is warning')
logging.error('this is error')
logging.critical('this is critical')
"""
2021-08-26日志模块封装
最新推荐文章于 2024-08-20 16:20:53 发布