#region 日志处理
class ColoredFormatter(logging.Formatter):
    # 定义颜色代码
    COLORS = {
        'DEBUG': '\033[94m',  # 蓝色
        'INFO': '\033[92m',   # 绿色
        'WARNING': '\033[93m',  # 黄色
        'ERROR': '\033[91m',   # 红色
        'CRITICAL': '\033[41m', # 红色背景
    }
    RESET = '\033[0m'  # 重置颜色

    def format(self, record):
        # 根据日志级别选择颜色
        color = self.COLORS.get(record.levelname, self.RESET)
        return color + super().format(record) + self.RESET        
        #return  super().format(record).replace(record.getMessage(), f"{color}{record.getMessage()}{self.RESET}")    
        
#设置logging 输出到控制台
logger=logging.getLogger()
handler=logging.StreamHandler()
handler.setFormatter(ColoredFormatter(fmt='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',datefmt='%Y-%m-%d %H:%M:%S'))
logger.addHandler(handler)
logger.setLevel(logging.DEBUG)
#endregion

标签: none

添加新评论