diff options
author | Kyomotoi <[email protected]> | 2022-06-13 19:32:52 +0800 |
---|---|---|
committer | Kyomotoi <[email protected]> | 2022-06-13 19:32:52 +0800 |
commit | 0448d215f8f55baa0bab0f668b67dc62fdf6b600 (patch) | |
tree | a76cf173d7aac8cf06b64aa50623c47cc6b36236 | |
parent | b623c850522de49110751d82e3c4e78c5b3b81ce (diff) | |
download | ATRI-0448d215f8f55baa0bab0f668b67dc62fdf6b600.tar.gz ATRI-0448d215f8f55baa0bab0f668b67dc62fdf6b600.tar.bz2 ATRI-0448d215f8f55baa0bab0f668b67dc62fdf6b600.zip |
🚸 完善错误提示
-rw-r--r-- | ATRI/exceptions.py | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/ATRI/exceptions.py b/ATRI/exceptions.py index 81a5f35..ddf6872 100644 --- a/ATRI/exceptions.py +++ b/ATRI/exceptions.py @@ -7,7 +7,7 @@ from typing import Optional from traceback import format_exc from pydantic.main import BaseModel -from nonebot.adapters.onebot.v11 import Bot +from nonebot.adapters.onebot.v11 import Bot, PrivateMessageEvent, GroupMessageEvent from nonebot.message import run_postprocessor from nonebot.exception import ActionFailed @@ -86,11 +86,12 @@ class ServiceRegisterError(BaseBotException): prompt = "服务注册错误" +class BilibiliDynamicError(BaseBotException): + prompt = "b站动态订阅错误" + + @run_postprocessor -async def _track_error( - exception: Optional[Exception], - bot: Bot, -) -> None: +async def _track_error(exception: Optional[Exception], bot: Bot, event) -> None: if not exception: return @@ -106,8 +107,15 @@ async def _track_error( prompt = "Unknown ERROR->" + err.__class__.__name__ track_id = _save_error(prompt, format_exc()) + if isinstance(event, PrivateMessageEvent): + _id = "用户" + event.get_user_id() + elif isinstance(event, GroupMessageEvent): + _id = "群" + str(event.group_id) + else: + _id = "unknown" + logger.debug(f"Error Track ID: {track_id}") - msg = f"呜——出错了...追踪: {track_id}" + msg = f"呜——出错了...追踪: {track_id}\n来自: {_id}" for superusers in BotSelfConfig.superusers: try: |