fix logging

This commit is contained in:
jxxghp
2025-09-03 12:42:13 +08:00
parent 9cc50bddab
commit eb0e67fc42
3 changed files with 27 additions and 21 deletions

View File

@@ -48,7 +48,7 @@ class ModuleManager(metaclass=Singleton):
# 通过模板开关控制加载 # 通过模板开关控制加载
_module.init_module() _module.init_module()
self._running_modules[module_id] = _module self._running_modules[module_id] = _module
logger.info(f"Moudle Loaded{module_id}") logger.debug(f"Moudle Loaded{module_id}")
except Exception as err: except Exception as err:
logger.error(f"Load Moudle Error{module_id}{str(err)} - {traceback.format_exc()}", exc_info=True) logger.error(f"Load Moudle Error{module_id}{str(err)} - {traceback.format_exc()}", exc_info=True)
@@ -61,7 +61,7 @@ class ModuleManager(metaclass=Singleton):
if hasattr(module, "stop"): if hasattr(module, "stop"):
try: try:
module.stop() module.stop()
logger.info(f"Moudle Stoped{module_id}") logger.debug(f"Moudle Stoped{module_id}")
except Exception as err: except Exception as err:
logger.error(f"Stop Moudle Error{module_id}{str(err)} - {traceback.format_exc()}", exc_info=True) logger.error(f"Stop Moudle Error{module_id}{str(err)} - {traceback.format_exc()}", exc_info=True)
logger.info("所有模块停止完成") logger.info("所有模块停止完成")

View File

@@ -327,8 +327,6 @@ def setup_prometheus_metrics(app):
# 结束请求 # 结束请求
monitor.end_request() monitor.end_request()
logger.info("Prometheus指标监控已设置")
def get_metrics_response(): def get_metrics_response():
""" """

View File

@@ -1,5 +1,6 @@
import asyncio import asyncio
import inspect import inspect
import multiprocessing
import threading import threading
import traceback import traceback
from datetime import datetime, timedelta from datetime import datetime, timedelta
@@ -23,8 +24,8 @@ from app.core.config import settings
from app.core.event import eventmanager, Event from app.core.event import eventmanager, Event
from app.core.plugin import PluginManager from app.core.plugin import PluginManager
from app.db.systemconfig_oper import SystemConfigOper from app.db.systemconfig_oper import SystemConfigOper
from app.helper.sites import SitesHelper # noqa
from app.helper.message import MessageHelper from app.helper.message import MessageHelper
from app.helper.sites import SitesHelper # noqa
from app.helper.wallpaper import WallpaperHelper from app.helper.wallpaper import WallpaperHelper
from app.log import logger from app.log import logger
from app.schemas import Notification, NotificationType, Workflow, ConfigChangeEventData from app.schemas import Notification, NotificationType, Workflow, ConfigChangeEventData
@@ -71,7 +72,8 @@ class Scheduler(metaclass=SingletonClass):
return return
event_data: ConfigChangeEventData = event.event_data event_data: ConfigChangeEventData = event.event_data
if event_data.key not in ['DEV', 'COOKIECLOUD_INTERVAL', 'MEDIASERVER_SYNC_INTERVAL', 'SUBSCRIBE_SEARCH', if event_data.key not in ['DEV', 'COOKIECLOUD_INTERVAL', 'MEDIASERVER_SYNC_INTERVAL', 'SUBSCRIBE_SEARCH',
'SUBSCRIBE_MODE', 'SUBSCRIBE_RSS_INTERVAL', 'SITEDATA_REFRESH_INTERVAL']: 'SUBSCRIBE_SEARCH_INTERVAL', 'SUBSCRIBE_MODE', 'SUBSCRIBE_RSS_INTERVAL',
'SITEDATA_REFRESH_INTERVAL']:
return return
logger.info(f"配置项 {event_data.key} 变更,重新初始化定时服务...") logger.info(f"配置项 {event_data.key} 变更,重新初始化定时服务...")
self.init() self.init()
@@ -94,17 +96,17 @@ class Scheduler(metaclass=SingletonClass):
"cookiecloud": { "cookiecloud": {
"name": "同步CookieCloud站点", "name": "同步CookieCloud站点",
"func": SiteChain().sync_cookies, "func": SiteChain().sync_cookies,
"running": False, "running": False
}, },
"mediaserver_sync": { "mediaserver_sync": {
"name": "同步媒体服务器", "name": "同步媒体服务器",
"func": MediaServerChain().sync, "func": MediaServerChain().sync,
"running": False, "running": False
}, },
"subscribe_tmdb": { "subscribe_tmdb": {
"name": "订阅元数据更新", "name": "订阅元数据更新",
"func": SubscribeChain().check, "func": SubscribeChain().check,
"running": False, "running": False
}, },
"subscribe_search": { "subscribe_search": {
"name": "订阅搜索补全", "name": "订阅搜索补全",
@@ -125,47 +127,47 @@ class Scheduler(metaclass=SingletonClass):
"subscribe_refresh": { "subscribe_refresh": {
"name": "订阅刷新", "name": "订阅刷新",
"func": SubscribeChain().refresh, "func": SubscribeChain().refresh,
"running": False, "running": False
}, },
"subscribe_follow": { "subscribe_follow": {
"name": "关注的订阅分享", "name": "关注的订阅分享",
"func": SubscribeChain().follow, "func": SubscribeChain().follow,
"running": False, "running": False
}, },
"transfer": { "transfer": {
"name": "下载文件整理", "name": "下载文件整理",
"func": TransferChain().process, "func": TransferChain().process,
"running": False, "running": False
}, },
"clear_cache": { "clear_cache": {
"name": "缓存清理", "name": "缓存清理",
"func": self.clear_cache, "func": self.clear_cache,
"running": False, "running": False
}, },
"user_auth": { "user_auth": {
"name": "用户认证检查", "name": "用户认证检查",
"func": self.user_auth, "func": self.user_auth,
"running": False, "running": False
}, },
"scheduler_job": { "scheduler_job": {
"name": "公共定时服务", "name": "公共定时服务",
"func": SchedulerChain().scheduler_job, "func": SchedulerChain().scheduler_job,
"running": False, "running": False
}, },
"random_wallpager": { "random_wallpager": {
"name": "壁纸缓存", "name": "壁纸缓存",
"func": WallpaperHelper().get_wallpapers, "func": WallpaperHelper().get_wallpapers,
"running": False, "running": False
}, },
"sitedata_refresh": { "sitedata_refresh": {
"name": "站点数据刷新", "name": "站点数据刷新",
"func": SiteChain().refresh_userdatas, "func": SiteChain().refresh_userdatas,
"running": False, "running": False
}, },
"recommend_refresh": { "recommend_refresh": {
"name": "推荐缓存", "name": "推荐缓存",
"func": RecommendChain().refresh_recommend, "func": RecommendChain().refresh_recommend,
"running": False, "running": False
}, },
"plugin_market_refresh": { "plugin_market_refresh": {
"name": "插件市场缓存", "name": "插件市场缓存",
@@ -417,9 +419,6 @@ class Scheduler(metaclass=SingletonClass):
# 初始化插件服务 # 初始化插件服务
self.init_plugin_jobs() self.init_plugin_jobs()
# 打印服务
self._scheduler.print_jobs()
# 启动定时服务 # 启动定时服务
self._scheduler.start() self._scheduler.start()
@@ -469,9 +468,18 @@ class Scheduler(metaclass=SingletonClass):
func = job.get("func") func = job.get("func")
if not func: if not func:
return return
# 是否多进程运行
run_in_process = job.get("run_in_process", False)
if inspect.iscoroutinefunction(func): if inspect.iscoroutinefunction(func):
# 协程函数
__start_coro(func(*args, **kwargs)) __start_coro(func(*args, **kwargs))
elif run_in_process:
# 多进程运行
p = multiprocessing.Process(target=func, args=args, kwargs=kwargs)
p.start()
p.join()
else: else:
# 普通函数
job["func"](*args, **kwargs) job["func"](*args, **kwargs)
except Exception as e: except Exception as e:
logger.error(f"定时任务 {job.get('name')} 执行失败:{str(e)} - {traceback.format_exc()}") logger.error(f"定时任务 {job.get('name')} 执行失败:{str(e)} - {traceback.format_exc()}")