1.1 KiB
1.1 KiB
Healthcheck Contracts
Doel
Elke runtime-component moet een eenvoudige en machineleesbare healthcheck hebben.
Backend
Endpoint
GET /health
Response 200
{
"status": "ok",
"service": "geointel-backend",
"version": "0.1.0",
"database": "ok",
"redis": "ok",
"storage": "ok"
}
Response 503
{
"status": "degraded",
"service": "geointel-backend",
"database": "unavailable",
"redis": "ok",
"storage": "ok",
"errors": ["database connection failed"]
}
Worker
Endpoint of command
Codex mag kiezen tussen een internal endpoint of CLI-command, maar het contract moet dit opleveren:
{
"status": "ok",
"queue": "default",
"pending_jobs": 0,
"failed_jobs": 0,
"last_heartbeat": "ISO-8601"
}
Frontend
Frontend moet een /status of settings/statuspanel hebben dat toont: backend bereikbaar, API version, auth status, feature flags en laatste healthchecktijd.
Storage
Storage healthcheck controleert of upload, originals, derived en exports writable zijn.
Database
Database healthcheck controleert connectie, PostGIS extension en migrationstatus.