From 53d01267b813508bfcb7e3c3720f72aef8145472 Mon Sep 17 00:00:00 2001 From: Allen Date: Tue, 14 May 2024 17:25:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=A8=A1=E5=9D=97=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD=E6=97=B6=E5=89=8D=E7=BD=AE=E6=A8=A1=E5=9D=97=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E5=AF=BC=E8=87=B4=E5=90=8E=E7=BB=AD=E5=9D=87=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E5=8A=A0=E8=BD=BD=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/core/module.py | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/app/core/module.py b/app/core/module.py index 1b8828ba..4bd8d3f6 100644 --- a/app/core/module.py +++ b/app/core/module.py @@ -34,22 +34,29 @@ class ModuleManager(metaclass=Singleton): for module in modules: module_id = module.__name__ self._modules[module_id] = module - # 生成实例 - _module = module() - # 初始化模块 - if self.check_setting(_module.init_setting()): - # 通过模板开关控制加载 - _module.init_module() - self._running_modules[module_id] = _module - logger.info(f"Moudle Loaded:{module_id}") + try: + # 生成实例 + _module = module() + # 初始化模块 + if self.check_setting(_module.init_setting()): + # 通过模板开关控制加载 + _module.init_module() + self._running_modules[module_id] = _module + logger.info(f"Moudle Loaded:{module_id}") + except: + logger.error(f"Load Moudle Error:{module_id}", exc_info=True) def stop(self): """ 停止所有模块 """ - for _, module in self._running_modules.items(): + for module_id, module in self._running_modules.items(): if hasattr(module, "stop"): - module.stop() + try: + module.stop() + logger.info(f"Moudle Stoped:{module_id}") + except: + logger.error(f"Stop Moudle Error:{module_id}", exc_info=True) def reload(self): """