为了解决这个问题,你可以将 get_log
函数修改为确保只在第一次调用时创建 logger,并且只添加一次 sink。可以使用一个全局变量来保存已经创建的 logger,确保只创建一次。
备注:sink=日志写入路径
from loguru import logger
from config.Config import Config
_global_logger = None
def get_log(sink=Config.LOG_FILE, rotation='100 MB'):
global _global_logger
if _global_logger is None:
_global_logger = logger
_global_logger.add(sink=sink, rotation=rotation, encoding='utf-8')
return _global_logger
if __name__ == '__main__':
log = get_log()
log.info("这是info")
log.error("这是错误")