feat:服务异常时推送前台消息

This commit is contained in:
jxxghp
2024-05-14 10:08:07 +08:00
parent bd6d6b6882
commit ae839235eb
3 changed files with 21 additions and 0 deletions

View File

@ -14,6 +14,7 @@ from app.core.config import settings
from app.core.event import Event as ManagerEvent
from app.core.event import eventmanager, EventManager
from app.core.plugin import PluginManager
from app.helper.message import MessageHelper
from app.helper.thread import ThreadHelper
from app.log import logger
from app.scheduler import Scheduler
@ -51,6 +52,8 @@ class Command(metaclass=Singleton):
self.chain = CommandChian()
# 定时服务管理
self.scheduler = Scheduler()
# 消息管理器
self.messagehelper = MessageHelper()
# 线程管理器
self.threader = ThreadHelper()
# 内置命令
@ -213,6 +216,9 @@ class Command(metaclass=Singleton):
)
except Exception as e:
logger.error(f"事件处理出错:{str(e)} - {traceback.format_exc()}")
self.messagehelper.put(title=f"{event.event_type} 事件处理出错",
message=str(e),
role="system")
def __run_command(self, command: Dict[str, any],
data_str: str = "",
@ -321,6 +327,9 @@ class Command(metaclass=Singleton):
logger.info(f"{command.get('description')} 执行完成")
except Exception as err:
logger.error(f"执行命令 {cmd} 出错:{str(err)} - {traceback.format_exc()}")
self.messagehelper.put(title=f"执行命令 {cmd} 出错",
message=str(err),
role="system")
@staticmethod
def send_plugin_event(etype: EventType, data: dict) -> None: