
- Set up FastAPI project structure with SQLite and SQLAlchemy - Create models for users, books, authors, categories, and orders - Implement JWT authentication and authorization - Add CRUD endpoints for all resources - Set up Alembic for database migrations - Add health check endpoint - Add proper error handling and validation - Create comprehensive documentation
22 lines
597 B
Python
22 lines
597 B
Python
from fastapi import APIRouter, Depends, status
|
|
from sqlalchemy.orm import Session
|
|
|
|
from app.db.database import get_db
|
|
|
|
router = APIRouter()
|
|
|
|
|
|
@router.get("/health", status_code=status.HTTP_200_OK)
|
|
async def health_check(db: Session = Depends(get_db)):
|
|
"""
|
|
Health check endpoint to verify API is running and database connection is working
|
|
"""
|
|
try:
|
|
# Execute a simple query to check database connection
|
|
db.execute("SELECT 1")
|
|
db_status = "healthy"
|
|
except Exception:
|
|
db_status = "unhealthy"
|
|
|
|
return {"status": "healthy", "database": db_status}
|