From ce7c435e12fcf811c2d0146f2c9049407b70adbf Mon Sep 17 00:00:00 2001 From: AL76 <735756072@qq.com> Date: Sat, 15 Mar 2025 17:17:38 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20logger=E5=B7=A5=E5=8E=82=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E7=8E=AF=E5=A2=83=E5=8F=98=E9=87=8F=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E7=BA=A7=E5=88=AB=EF=BC=88CR=E6=84=8F?= =?UTF-8?q?=E8=A7=81=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/common/logger.py | 12 ++++++++---- template.env | 8 +++++++- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/common/logger.py b/src/common/logger.py index 201f3b1fb..c546b700b 100644 --- a/src/common/logger.py +++ b/src/common/logger.py @@ -1,8 +1,12 @@ from loguru import logger from typing import Dict, Optional, Union, List import sys +import os from types import ModuleType from pathlib import Path +from dotenv import load_dotenv + +load_dotenv() # 保存原生处理器ID default_handler_id = None @@ -110,7 +114,7 @@ def get_module_logger( # 控制台处理器 console_id = logger.add( sink=sys.stderr, - level=console_level or current_config["console_level"], + level=os.getenv("CONSOLE_LOG_LEVEL", console_level or current_config["console_level"]), format=current_config["console_format"], filter=lambda record: record["extra"].get("module") == module_name, enqueue=True, @@ -125,7 +129,7 @@ def get_module_logger( file_id = logger.add( sink=str(log_file), - level=file_level or current_config["file_level"], + level=os.getenv("FILE_LOG_LEVEL", file_level or current_config["file_level"]), format=current_config["file_format"], rotation=current_config["rotation"], retention=current_config["retention"], @@ -159,7 +163,7 @@ def remove_module_logger(module_name: str) -> None: # 添加全局默认处理器(只处理未注册模块的日志--->控制台) DEFAULT_GLOBAL_HANDLER = logger.add( sink=sys.stderr, - level="SUCCESS", + level=os.getenv("DEFAULT_CONSOLE_LOG_LEVEL", "SUCCESS"), format=( "{time:YYYY-MM-DD HH:mm:ss} | " "{level: <8} | " @@ -178,7 +182,7 @@ other_log_dir.mkdir(parents=True, exist_ok=True) DEFAULT_FILE_HANDLER = logger.add( sink=str(other_log_dir / f"{{time:YYYY-MM-DD}}.log"), - level="DEBUG", + level=os.getenv("DEFAULT_FILE_LOG_LEVEL", "DEBUG"), format=( "{time:YYYY-MM-DD HH:mm:ss} | " "{level: <8} | " diff --git a/template.env b/template.env index 322776ce7..3d29025f4 100644 --- a/template.env +++ b/template.env @@ -23,7 +23,13 @@ CHAT_ANY_WHERE_BASE_URL=https://api.chatanywhere.tech/v1 SILICONFLOW_BASE_URL=https://api.siliconflow.cn/v1/ DEEP_SEEK_BASE_URL=https://api.deepseek.com/v1 -#定义你要用的api的key(需要去对应网站申请哦) +# 定义你要用的api的key(需要去对应网站申请哦) DEEP_SEEK_KEY= CHAT_ANY_WHERE_KEY= SILICONFLOW_KEY= + +# 定义日志相关配置 +CONSOLE_LOG_LEVEL=INFO # 自定义日志的默认控制台输出日志级别 +FILE_LOG_LEVEL=DEBUG # 自定义日志的默认文件输出日志级别 +DEFAULT_CONSOLE_LOG_LEVEL=SUCCESS # 原生日志的控制台输出日志级别(nonebot就是这一类) +DEFAULT_FILE_LOG_LEVEL=DEBUG # 原生日志的默认文件输出日志级别(nonebot就是这一类) \ No newline at end of file