import os import sys from loguru import logger from app.config import config from app.utils import utils def __init_logger(): # _log_file = utils.storage_dir("logs/server.log") _lvl = config.log_level root_dir = os.path.dirname( os.path.dirname(os.path.dirname(os.path.realpath(__file__))) ) def format_record(record): # 获取日志记录中的文件全路径 file_path = record["file"].path # 将绝对路径转换为相对于项目根目录的路径 relative_path = os.path.relpath(file_path, root_dir) # 更新记录中的文件路径 record["file"].path = f"./{relative_path}" # 返回修改后的格式字符串 # 您可以根据需要调整这里的格式 _format = ( "{time:%Y-%m-%d %H:%M:%S} | " + "{level} | " + '"{file.path}:{line}": {function} ' + "- {message}" + "\n" ) return _format logger.remove() logger.add( sys.stdout, level=_lvl, format=format_record, colorize=True, ) # logger.add( # _log_file, # level=_lvl, # format=format_record, # rotation="00:00", # retention="3 days", # backtrace=True, # diagnose=True, # enqueue=True, # ) __init_logger()