flask中日志的使用(按照日期切割)

使用模块

使用python自身的logging模块

import logging
# 按照日期切割日志的handler
from loggin.handlers import TimeRotatingFileHandler

实现思路

  1. 从logging获取一个日志类
  2. 根据需求设置不同的日志处理器(handler)
  3. 配置每个handler的参数(文件名/级别/格式等)
  4. 将设置好的处理器添加给第一步中获取的日志类

实现代码

logger = logging.getLogger('mylogger')
# 设置日志基础级别
logger.setLevel(logging.DEBUG)
# 日志格式
formatter = '%(asctime)s: %(levelname)s %(filename)s-%(module)s-%(funcName)s-%(lineno)d %(message)s'
log_formatter = logging.Formatter(formatter)
# info日志处理器
info_handler = TimedRotatingFileHandler(filename='logs/info.log', when='D', interval=1, backupCount=7, encoding='utf-8')
# log_handler.suffix = '%Y-%m-%d.log'
# log_handler.extMatch = re.compile(r'^\d{4}-\d{2}-\d{2}.log')
info_handler.setFormatter(log_formatter)
# 错误日志处理器
err_handler = TimedRotatingFileHandler(filename='logs/error.log', when='D', interval=1, backupCount=7, encoding='utf-8')
# err_handler.suffix = '%Y-%m-%d.log'
# err_handler.extMatch = re.compile(r'^\d{4}-\d{2}-\d{2}.log')
err_handler.setFormatter(log_formatter)
# 添加日志处理器
logger.addHandler(info_handler)
logger.addHandler(err_handler)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。