Skip to content
Self-hosting

Operations

Daily operating checks for the review service: health, queue, logs, metrics, dashboards, and context services.

Health endpoints

/health
Liveness. Use for simple process checks.
/ready
Readiness. Use for orchestration because it waits for DB and migrations.
/metrics
Prometheus metrics for queues, jobs, HTTP requests, uptime, and AI usage.

Useful commands

docker compose ps
docker compose logs -f gittensory
curl http://localhost:8787/ready
curl http://localhost:8787/metrics
bash

Important log events

selfhost_listening
selfhost_migrations_applied
selfhost_ai_provider
selfhost_ai_review_plan
selfhost_embed_provider
selfhost_vectorize
selfhost_job_dead
selfhost_cron_error
review_context_fetch_failed

Observability profile

The observability profile starts Prometheus, Alertmanager, Loki, Promtail, and Grafana with dashboards for infra, review activity, and AI usage.

When OpenTelemetry and Sentry are enabled, job audit logs and Sentry events include trace_id/span_id fields so an operator can jump from a failed job or issue to the matching trace in Grafana or Tempo.

docker compose --profile observability up -d
bash

Routine checks

  • Queue pending count is not growing without processing.
  • Dead jobs stay at zero or are investigated promptly.
  • Webhook deliveries are recent and have 2xx responses.
  • AI usage matches expected review volume and model/effort choices.
  • REES and RAG failures are visible and bounded.
  • Backups are recent and restore-tested.

If an operating check fails, go to Self-host troubleshooting.