mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-08-25 02:00:13 +08:00
fix logging
This commit is contained in:
@@ -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("所有模块停止完成")
|
||||||
|
|||||||
@@ -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():
|
||||||
"""
|
"""
|
||||||
|
|||||||
@@ -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()}")
|
||||||
|
|||||||
Reference in New Issue
Block a user