27 lines
661 B
Python
27 lines
661 B
Python
from fastapi import APIRouter, Depends, status
|
|
from sqlalchemy import text
|
|
from sqlalchemy.orm import Session
|
|
|
|
from app.database.config import get_db
|
|
|
|
router = APIRouter()
|
|
|
|
|
|
@router.get("/health", status_code=status.HTTP_200_OK)
|
|
def health_check(db: Session = Depends(get_db)):
|
|
"""
|
|
Health check endpoint that verifies the application is running
|
|
and can connect to the database.
|
|
"""
|
|
# Check database connection
|
|
try:
|
|
db.execute(text("SELECT 1"))
|
|
db_status = "healthy"
|
|
except Exception:
|
|
db_status = "unhealthy"
|
|
|
|
return {
|
|
"status": "up",
|
|
"database": db_status,
|
|
"version": "0.1.0"
|
|
} |