refactor(logger): 统一日志配置并添加模块特定样式

为远程、表情、主程序、后台任务等模块添加了特定的日志样式配置,并统一了日志初始化方式,以提高日志的可读性和一致性。
This commit is contained in:
墨梓柒
2025-04-23 23:16:20 +08:00
parent e9a5c773c4
commit 79260d3b86
5 changed files with 81 additions and 8 deletions

9
bot.py
View File

@@ -8,11 +8,16 @@ import time
import platform import platform
import traceback import traceback
from dotenv import load_dotenv from dotenv import load_dotenv
from src.common.logger import get_module_logger, LogConfig, CONFIRM_STYLE_CONFIG from src.common.logger import get_module_logger, LogConfig, CONFIRM_STYLE_CONFIG, MAIN_STYLE_CONFIG
from src.common.crash_logger import install_crash_handler from src.common.crash_logger import install_crash_handler
from src.main import MainSystem from src.main import MainSystem
logger = get_module_logger("main_bot")
main_log_config = LogConfig(
console_format=MAIN_STYLE_CONFIG["console_format"],
file_format=MAIN_STYLE_CONFIG["file_format"],
)
logger = get_module_logger("main_bot", config=main_log_config)
confirm_logger_config = LogConfig( confirm_logger_config = LogConfig(
console_format=CONFIRM_STYLE_CONFIG["console_format"], console_format=CONFIRM_STYLE_CONFIG["console_format"],
file_format=CONFIRM_STYLE_CONFIG["file_format"], file_format=CONFIRM_STYLE_CONFIG["file_format"],

View File

@@ -297,6 +297,22 @@ CHAT_STYLE_CONFIG = {
}, },
} }
REMOTE_STYLE_CONFIG = {
"advanced": {
"console_format": (
"<white>{time:YYYY-MM-DD HH:mm:ss}</white> | "
"<level>{level: <8}</level> | "
"<light-yellow>远程</light-yellow> | "
"<level>{message}</level>"
),
"file_format": "{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {extra[module]: <15} | 远程 | {message}",
},
"simple": {
"console_format": "<level>{time:MM-DD HH:mm}</level> | <light-yellow>远程</light-yellow> | {message}",
"file_format": "{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {extra[module]: <15} | 远程 | {message}",
},
}
SUB_HEARTFLOW_STYLE_CONFIG = { SUB_HEARTFLOW_STYLE_CONFIG = {
"advanced": { "advanced": {
"console_format": ( "console_format": (
@@ -315,6 +331,24 @@ SUB_HEARTFLOW_STYLE_CONFIG = {
}, },
} }
BACKGROUND_TASKS_STYLE_CONFIG = {
"advanced": {
"console_format": (
"<white>{time:YYYY-MM-DD HH:mm:ss}</white> | "
"<level>{level: <8}</level> | "
"<light-blue>后台任务</light-blue> | "
"<level>{message}</level>"
),
"file_format": "{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {extra[module]: <15} | 后台任务 | {message}",
},
"simple": {
"console_format": (
"<level>{time:MM-DD HH:mm}</level> | <light-blue>后台任务</light-blue> | <light-blue>{message}</light-blue>"
), # noqa: E501
"file_format": "{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {extra[module]: <15} | 后台任务 | {message}",
},
}
WILLING_STYLE_CONFIG = { WILLING_STYLE_CONFIG = {
"advanced": { "advanced": {
"console_format": ( "console_format": (
@@ -331,6 +365,22 @@ WILLING_STYLE_CONFIG = {
}, },
} }
EMOJI_STYLE_CONFIG = {
"advanced": {
"console_format": (
"<white>{time:YYYY-MM-DD HH:mm:ss}</white> | "
"<level>{level: <8}</level> | "
"<light-blue>表情</light-blue> | "
"<level>{message}</level>"
),
"file_format": "{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {extra[module]: <15} | 表情 | {message}",
},
"simple": {
"console_format": "<level>{time:MM-DD HH:mm}</level> | <light-blue>表情 | {message} </light-blue>", # noqa: E501
"file_format": "{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {extra[module]: <15} | 表情 | {message}",
},
}
MAI_STATE_CONFIG = { MAI_STATE_CONFIG = {
"advanced": { "advanced": {
@@ -393,6 +443,9 @@ CONFIRM_STYLE_CONFIG = {
# 根据SIMPLE_OUTPUT选择配置 # 根据SIMPLE_OUTPUT选择配置
MAIN_STYLE_CONFIG = MAIN_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else MAIN_STYLE_CONFIG["advanced"] MAIN_STYLE_CONFIG = MAIN_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else MAIN_STYLE_CONFIG["advanced"]
EMOJI_STYLE_CONFIG = EMOJI_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else EMOJI_STYLE_CONFIG["advanced"]
REMOTE_STYLE_CONFIG = REMOTE_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else REMOTE_STYLE_CONFIG["advanced"]
BACKGROUND_TASKS_STYLE_CONFIG = BACKGROUND_TASKS_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else BACKGROUND_TASKS_STYLE_CONFIG["advanced"]
MEMORY_STYLE_CONFIG = MEMORY_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else MEMORY_STYLE_CONFIG["advanced"] MEMORY_STYLE_CONFIG = MEMORY_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else MEMORY_STYLE_CONFIG["advanced"]
TOPIC_STYLE_CONFIG = TOPIC_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else TOPIC_STYLE_CONFIG["advanced"] TOPIC_STYLE_CONFIG = TOPIC_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else TOPIC_STYLE_CONFIG["advanced"]
SENDER_STYLE_CONFIG = SENDER_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else SENDER_STYLE_CONFIG["advanced"] SENDER_STYLE_CONFIG = SENDER_STYLE_CONFIG["simple"] if SIMPLE_OUTPUT else SENDER_STYLE_CONFIG["advanced"]

View File

@@ -2,14 +2,19 @@ import asyncio
import traceback import traceback
from typing import Optional, Coroutine, Callable, Any, List from typing import Optional, Coroutine, Callable, Any, List
from src.common.logger import get_module_logger from src.common.logger import get_module_logger, LogConfig, BACKGROUND_TASKS_STYLE_CONFIG
# Need manager types for dependency injection # Need manager types for dependency injection
from src.heart_flow.mai_state_manager import MaiStateManager, MaiStateInfo from src.heart_flow.mai_state_manager import MaiStateManager, MaiStateInfo
from src.heart_flow.subheartflow_manager import SubHeartflowManager from src.heart_flow.subheartflow_manager import SubHeartflowManager
from src.heart_flow.interest_logger import InterestLogger from src.heart_flow.interest_logger import InterestLogger
logger = get_module_logger("background_tasks") background_tasks_log_config = LogConfig(
console_format=BACKGROUND_TASKS_STYLE_CONFIG["console_format"],
file_format=BACKGROUND_TASKS_STYLE_CONFIG["file_format"],
)
logger = get_module_logger("background_tasks", config=background_tasks_log_config)
class BackgroundTaskManager: class BackgroundTaskManager:

View File

@@ -14,9 +14,14 @@ from ...config.config import global_config
from ..chat.utils import get_embedding from ..chat.utils import get_embedding
from ..chat.utils_image import ImageManager, image_path_to_base64 from ..chat.utils_image import ImageManager, image_path_to_base64
from ..models.utils_model import LLMRequest from ..models.utils_model import LLMRequest
from src.common.logger import get_module_logger from src.common.logger import get_module_logger, LogConfig, EMOJI_STYLE_CONFIG
logger = get_module_logger("emoji") emoji_log_config = LogConfig(
console_format=EMOJI_STYLE_CONFIG["console_format"],
file_format=EMOJI_STYLE_CONFIG["file_format"],
)
logger = get_module_logger("emoji", config=emoji_log_config)
image_manager = ImageManager() image_manager = ImageManager()

View File

@@ -5,10 +5,15 @@ import platform
import os import os
import json import json
import threading import threading
from src.common.logger import get_module_logger from src.common.logger import get_module_logger, LogConfig, REMOTE_STYLE_CONFIG
from src.config.config import global_config from src.config.config import global_config
logger = get_module_logger("remote")
remote_log_config = LogConfig(
console_format=REMOTE_STYLE_CONFIG["console_format"],
file_format=REMOTE_STYLE_CONFIG["file_format"],
)
logger = get_module_logger("remote", config=remote_log_config)
# UUID文件路径 # UUID文件路径
UUID_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "client_uuid.json") UUID_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), "client_uuid.json")