17 lines
573 B
Python
17 lines
573 B
Python
"""Служебные эндпоинты: healthcheck для Docker и мониторинга."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from fastapi import APIRouter, Request
|
|
|
|
from common import __version__
|
|
|
|
router = APIRouter(tags=["service"])
|
|
|
|
|
|
@router.get("/healthz")
|
|
async def healthz(request: Request) -> dict[str, str]:
|
|
"""Вернуть состояние сервиса (используется healthcheck'ом контейнера)."""
|
|
settings = request.app.state.settings
|
|
return {"status": "ok", "version": __version__, "app_env": settings.app_env}
|