Skip to main content

Health check endpoints

Basic health

GET /api/healthNo authentication required. Returns basic status, timestamp, and environment. Suitable for load balancer probes and Docker/Kubernetes health checks.

Current health status

GET /api/health/statusRequires authentication. Returns the latest overall health status (healthy, degraded, or unhealthy) and per-component check results from the most recent run.

Prometheus metrics

GET /api/metricsNo authentication required. Returns metrics in Prometheus text format for scraping by monitoring systems.

Full health check

GET /api/health/checkRequires authentication. Runs all health checks (database, GitLab, AI providers, disk space) and saves the results to the database.

Additional health endpoints

EndpointDescription
GET /api/health/detailedDetailed status including uptime and version (requires auth)
GET /api/health/databaseDatabase connectivity check (requires auth)
GET /api/health/gitlabGitLab connectivity check (requires auth)
GET /api/health/ai-providersAll configured AI provider checks (requires auth)
GET /api/health/disk-spaceDisk space check (requires auth)
GET /api/health/historyPaginated health check history (requires auth)

Monitoring API endpoints

EndpointDescription
GET /api/monitoring/overviewSystem overview: CPU, memory, uptime, database, API stats
GET /api/monitoring/systemHistorical system metrics (paginated)
GET /api/monitoring/databaseHistorical database metrics (paginated)
GET /api/monitoring/apiAPI call statistics with success/error rates
POST /api/monitoring/collectManually trigger system and database metrics collection

Log configuration

VariableDescription
LOG_DIRDirectory where log files are written. Must be writable by the server process.
LOG_LEVELLog verbosity (e.g., info, debug, warn, error).
LOG_RETENTION_DAYSNumber of days to retain log files before automatic cleanup.
Before starting the server, verify that LOG_DIR exists and is writable. If the directory is not writable, log output will not be persisted to disk.

Admin dashboard

The admin dashboard provides built-in observability views under the System section:
  • System → Logs — Browse and search server log output.
  • System → Monitoring — View system metrics, database metrics, and API call statistics.
  • System → Performance — Review performance suggestions.

Backup configuration

VariableDescription
AUTO_BACKUP_ENABLEDSet to true to enable automatic scheduled backups.
BACKUP_DIRDirectory where backup files are written. Must be writable.
BACKUP_RETENTION_DAYSNumber of days to retain backup files before automatic cleanup.
METRICS_RETENTION_DAYSNumber of days to retain collected metrics data.
If automatic backups are enabled, verify after deployment that the backup scheduler has run at least once and that files are appearing in BACKUP_DIR.

Operations checklist

After deployment, verify the following: Service health
  • GET /api/health returns a 200 response
  • GET /api/health/status shows overall: healthy
  • GET /api/metrics returns Prometheus metrics output
Key business functions
  • Login to the admin dashboard succeeds
  • Platform configuration is readable
  • AI configuration is readable
  • Project sync executes without errors
  • Automatic reviews can be queued
  • Runner picks up tasks and reports results back to the server
Storage
  • LOG_DIR is writable and log files are being created
  • BACKUP_DIR is writable
  • If AUTO_BACKUP_ENABLED is set, confirm the scheduler has executed

Build docs developers (and LLMs) love