Observability (Prometheus, Grafana, Loki)
-
Metrics
/metricsendpoint + Postgres exporter. -
Dashboards
Grafana embedded with default UID
tribrid-overview. -
Logs
Loki + Promtail for container logs and app logs.
Sampling
Adjust tracing.trace_sampling_rate to manage cost and overhead. Use 1.0 in dev and 0.1–0.2 in production.
Anonymous Grafana
The compose stack enables anonymous access for embeds. Harden in production.
Timestamps
DOCKER_LOGS_TIMESTAMPS=1 helps correlate events across services.
Components
| Service | Port | Notes |
|---|---|---|
| Prometheus | 9090 | Scrapes /api/metrics and exporter |
| Grafana | 3001 | Embedded dashboard in UI |
| Loki | 3100 | Log aggregation |
| Promtail | — | Ships container/host logs |
flowchart LR
App["TriBridRAG"] --> METRICS["/api/metrics"]
METRICS --> PROM["Prometheus"]
PROM --> GRAF["Grafana"]
LOGS["Docker Logs"] --> PROMTAIL["Promtail"]
PROMTAIL --> LOKI["Loki"]
LOKI --> GRAF Dashboards
Mount your own Grafana provisioning under infra/grafana/provisioning to add/override dashboards and datasources.