58 lines
1.1 KiB
Markdown
58 lines
1.1 KiB
Markdown
# Healthcheck Contracts
|
|
|
|
## Doel
|
|
Elke runtime-component moet een eenvoudige en machineleesbare healthcheck hebben.
|
|
|
|
## Backend
|
|
|
|
### Endpoint
|
|
`GET /health`
|
|
|
|
### Response 200
|
|
```json
|
|
{
|
|
"status": "ok",
|
|
"service": "geointel-backend",
|
|
"version": "0.1.0",
|
|
"database": "ok",
|
|
"redis": "ok",
|
|
"storage": "ok"
|
|
}
|
|
```
|
|
|
|
### Response 503
|
|
```json
|
|
{
|
|
"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:
|
|
|
|
```json
|
|
{
|
|
"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.
|