system.py 879 B

123456789101112131415161718192021222324252627282930313233
  1. from __future__ import annotations
  2. from fastapi import APIRouter, Depends
  3. from sqlalchemy import text
  4. from sqlalchemy.orm import Session
  5. from app.agents.runtime import get_agent_runtime
  6. from app.core.config import settings
  7. from app.db.session import get_db
  8. router = APIRouter(tags=["系统"])
  9. @router.get("/system/info", summary="平台信息")
  10. def system_info() -> dict:
  11. return {
  12. "name": settings.app_name,
  13. "environment": settings.app_env,
  14. "database_dialect": settings.database_dialect,
  15. "agent": get_agent_runtime().describe(),
  16. }
  17. @router.get("/system/health", summary="业务数据库健康检查")
  18. def system_health(db: Session = Depends(get_db)) -> dict:
  19. db.execute(text("SELECT 1"))
  20. return {
  21. "status": "ok",
  22. "database": settings.database_dialect,
  23. "agent": get_agent_runtime().describe(),
  24. }