Merge pull request #192 from Naptie/contrib

refactor: 截断过长的在日志中展示的消息
This commit is contained in:
tcmofashi
2025-03-12 08:01:22 +08:00
committed by GitHub
2 changed files with 15 additions and 6 deletions

View File

@@ -10,6 +10,7 @@ from .message import MessageSending, MessageThinking, MessageRecv, MessageSet
from .storage import MessageStorage
from .config import global_config
from .utils import truncate_message
class Message_Sender:
@@ -34,6 +35,7 @@ class Message_Sender:
message_json = message.to_dict()
message_send = MessageSendCQ(data=message_json)
# logger.debug(message_send.message_info,message_send.raw_message)
message_preview = truncate_message(message.processed_plain_text)
if (
message_send.message_info.group_info
and message_send.message_info.group_info.group_id
@@ -44,10 +46,10 @@ class Message_Sender:
message=message_send.raw_message,
auto_escape=False,
)
logger.success(f"[调试] 发送消息{message.processed_plain_text}成功")
logger.success(f"[调试] 发送消息{message_preview}成功")
except Exception as e:
logger.error(f"[调试] 发生错误 {e}")
logger.error(f"[调试] 发送消息{message.processed_plain_text}失败")
logger.error(f"[调试] 发送消息{message_preview}失败")
else:
try:
logger.debug(message.message_info.user_info)
@@ -56,10 +58,10 @@ class Message_Sender:
message=message_send.raw_message,
auto_escape=False,
)
logger.success(f"[调试] 发送消息{message.processed_plain_text}成功")
logger.success(f"[调试] 发送消息{message_preview}成功")
except Exception as e:
logger.error(f"发生错误 {e}")
logger.error(f"[调试] 发送消息{message.processed_plain_text}失败")
logger.error(f"[调试] 发生错误 {e}")
logger.error(f"[调试] 发送消息{message_preview}失败")
class MessageContainer:
@@ -184,7 +186,7 @@ class MessageManager:
await message_earliest.process()
print(
f"\033[1;34m[调试]\033[0m 消息'{message_earliest.processed_plain_text}'正在发送中"
f"\033[1;34m[调试]\033[0m 消息{truncate_message(message_earliest.processed_plain_text)}正在发送中"
)
await self.storage.store_message(

View File

@@ -406,3 +406,10 @@ def find_similar_topics_simple(text: str, topics: list, top_k: int = 5) -> list:
# 按相似度降序排序并返回前k个
return sorted(similarities, key=lambda x: x[1], reverse=True)[:top_k]
def truncate_message(message: str, max_length=20) -> str:
"""截断消息,使其不超过指定长度"""
if len(message) > max_length:
return message[:max_length] + "..."
return message