- 新增 platform_scheduled_tasks 和 platform_task_logs 数据表 - 实现 APScheduler 调度器服务(支持简单模式和CRON表达式) - 添加定时任务 CRUD API - 支持手动触发执行和查看执行日志 - 前端任务管理页面
This commit is contained in:
@@ -15,8 +15,10 @@ from .routers.alerts import router as alerts_router
|
||||
from .routers.cost import router as cost_router
|
||||
from .routers.quota import router as quota_router
|
||||
from .routers.tool_configs import router as tool_configs_router
|
||||
from .routers.tasks import router as tasks_router
|
||||
from .middleware import TraceMiddleware, setup_exception_handlers, RequestLoggerMiddleware
|
||||
from .middleware.trace import setup_logging
|
||||
from .services.scheduler import start_scheduler, shutdown_scheduler
|
||||
|
||||
# 配置日志(包含 TraceID)
|
||||
setup_logging(level=logging.INFO, include_trace=True)
|
||||
@@ -68,6 +70,27 @@ app.include_router(alerts_router, prefix="/api")
|
||||
app.include_router(cost_router, prefix="/api")
|
||||
app.include_router(quota_router, prefix="/api")
|
||||
app.include_router(tool_configs_router, prefix="/api")
|
||||
app.include_router(tasks_router, prefix="/api")
|
||||
|
||||
|
||||
@app.on_event("startup")
|
||||
async def startup_event():
|
||||
"""应用启动时初始化调度器"""
|
||||
try:
|
||||
start_scheduler()
|
||||
logging.info("Scheduler started successfully")
|
||||
except Exception as e:
|
||||
logging.error(f"Failed to start scheduler: {e}")
|
||||
|
||||
|
||||
@app.on_event("shutdown")
|
||||
async def shutdown_event():
|
||||
"""应用关闭时停止调度器"""
|
||||
try:
|
||||
shutdown_scheduler()
|
||||
logging.info("Scheduler shutdown successfully")
|
||||
except Exception as e:
|
||||
logging.error(f"Failed to shutdown scheduler: {e}")
|
||||
|
||||
|
||||
@app.get("/")
|
||||
|
||||
Reference in New Issue
Block a user