简介 实现有用工具 日志处理器 日志处理器 先在项目里装个“行车记录仪”,方便后续故障排查。 common/log_handler.py 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 import logging from logging.handlers import RotatingFileHandler import os def setup_logger(name: str = __name__, level: int = logging.DEBUG) -> logging.Logger: """ 配置并返回一个logger实例 :param name: logger名称,建议使用模块名(__name__) :param level: 日志级别,默认INFO :return: 配置好的logger """ if not os.path.exists("logs"): os.makedirs("logs") log_format = "%(asctime)s - %(levelname)s - %(filename)s:%(funcName)s:%(lineno)d - %(message)s" date_format = "%Y-%m-%d %H:%M:%S" logger = logging.getLogger(name) logger.setLevel(level) file_fromatter = logging.Formatter(log_format,date_format) file_handler_for_all = RotatingFileHandler( "logs/all.log", maxBytes=10*1024*1024, backupCount=5, encoding="utf-8" ) file_handler_for_all.setLevel(level) file_handler_for_all.setFormatter(file_fromatter) logger.addHandler(file_handler_for_all) file_handler_for_error = RotatingFileHandler( "logs/error.log", maxBytes=10*1024*1024, backupCount=5, encoding="utf-8" ) file_handler_for_error.setLevel(logging.ERROR) file_handler_for_error.setFormatter(file_fromatter) logger.addHandler(file_handler_for_error) return logger if __name__=="__main__": logger = setup_logger() logger.debug("测试") logger.info("测试") logger.warning("测试") logger.error("测试") logger.critical("测试") 参考: 快速入门 logging 模块 最后更新于 2026年03月09日文件数据读取器