diff --git a/main.py b/main.py index ec70748c..03b2ecde 100644 --- a/main.py +++ b/main.py @@ -108,6 +108,7 @@ def reset_logging(): # 临时函数,用于加载config和上下文,未来统一放在config类 def load_config(): + logging.info("检查config模块完整性.") # 完整性校验 is_integrity = True config_template = importlib.import_module('config-template') @@ -119,7 +120,7 @@ def load_config(): is_integrity = False if not is_integrity: - logging.warning("配置文件不完整,请依据config-template.py检查config.py") + logging.warning("配置文件不完整,您可以依据config-template.py检查config.py") # 检查override.json覆盖 if os.path.exists("override.json"): @@ -132,13 +133,31 @@ def load_config(): logging.error("无法覆写配置[{}]为[{}],该配置不存在,请检查override.json是否正确".format(key, override_json[key])) if not is_integrity: - logging.warning("以上配置已被设为默认值,将在5秒后继续启动... ") - time.sleep(5) + logging.warning("以上配置已被设为默认值,将在3秒后继续启动... ") + time.sleep(3) # 存进上下文 pkg.utils.context.set_config(config) +def complete_tips(): + """根据tips-custom-template模块补全tips模块的属性""" + is_integrity = True + logging.info("检查tips模块完整性.") + tips_template = importlib.import_module('tips-custom-template') + tips = importlib.import_module('tips') + for key in dir(tips_template): + if not key.startswith("__") and not hasattr(tips, key): + setattr(tips, key, getattr(tips_template, key)) + logging.warning("[{}]不存在".format(key)) + is_integrity = False + + if not is_integrity: + logging.warning("tips模块不完整,您可以依据tips-custom-template.py检查tips.py") + logging.warning("以上配置已被设为默认值,将在3秒后继续启动... ") + time.sleep(3) + + def start(first_time_init=False): """启动流程,reload之后会被执行""" @@ -405,6 +424,9 @@ def main(): load_config() config = pkg.utils.context.get_config() + # 检查tips模块 + complete_tips() + # 配置线程池 from pkg.utils import ThreadCtl thread_ctl = ThreadCtl( diff --git a/pkg/utils/reloader.py b/pkg/utils/reloader.py index d06821ec..abe27fa0 100644 --- a/pkg/utils/reloader.py +++ b/pkg/utils/reloader.py @@ -54,6 +54,7 @@ def reload_all(notify=True): # 执行启动流程 logging.info("执行程序启动流程") main.load_config() + main.complete_tips() context.get_thread_ctl().reload( admin_pool_num=context.get_config().admin_pool_num, user_pool_num=context.get_config().user_pool_num