chef_agent
This commit is contained in:
37
main.py
37
main.py
@@ -1,4 +1,4 @@
|
||||
import logging
|
||||
import structlog
|
||||
|
||||
import models
|
||||
from contextlib import asynccontextmanager
|
||||
@@ -7,20 +7,18 @@ from fastapi.middleware.cors import CORSMiddleware
|
||||
from sqlmodel import SQLModel
|
||||
|
||||
from api.agent_api import agent_router
|
||||
from core.config.logging_cof import setup_logging
|
||||
from core.db import engine
|
||||
from core.config.settings import settings
|
||||
from api.scheduler_api import scheduler_router
|
||||
from api.lottery_api import lottery_router
|
||||
from core.task.dlt_scheduler import scheduler
|
||||
from exceptions.handlers import register_exception_handlers
|
||||
from lc.chef_agent import chef_agent
|
||||
|
||||
# 配置日志
|
||||
logging.basicConfig(
|
||||
level=logging.INFO,
|
||||
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
|
||||
)
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
# 全局设置日志配置
|
||||
setup_logging()
|
||||
logger = structlog.getLogger(__name__)
|
||||
|
||||
# lifespan生命周期
|
||||
@asynccontextmanager
|
||||
@@ -30,23 +28,34 @@ async def lifespan(app: FastAPI):
|
||||
# 同步建表
|
||||
SQLModel.metadata.create_all(engine)
|
||||
|
||||
logger.info("服务启动,启动定时调度器")
|
||||
# 启动定时调度器
|
||||
scheduler.start()
|
||||
|
||||
# 初始化chef_agent
|
||||
logger.info("服务启动,创建携程初始化chef_agent任务")
|
||||
# 异步初始化chef_agent
|
||||
chef_agent.initialize()
|
||||
|
||||
yield # 此处交出控制权,服务开始运行
|
||||
# ========== 关闭时执行 ==========
|
||||
logger.info("服务关闭,释放资源")
|
||||
chef_agent.close()
|
||||
scheduler.shutdown()
|
||||
logger.info("服务启动完成")
|
||||
try:
|
||||
yield # 此处交出控制权,服务开始运行
|
||||
finally:
|
||||
# ========== 关闭时执行 ==========
|
||||
logger.info("服务关闭,释放资源")
|
||||
chef_agent.close()
|
||||
scheduler.shutdown()
|
||||
|
||||
app = FastAPI(lifespan=lifespan)
|
||||
|
||||
# 注册全局异常处理
|
||||
register_exception_handlers(app)
|
||||
|
||||
# 注册路由
|
||||
app.include_router(scheduler_router)
|
||||
app.include_router(lottery_router)
|
||||
app.include_router(agent_router)
|
||||
|
||||
# 注册中间件
|
||||
app.add_middleware(
|
||||
CORSMiddleware, # type: ignore[arg-type]
|
||||
allow_origins=settings.ALLOWED_ORIGINS,
|
||||
|
||||
Reference in New Issue
Block a user