Prometheus + Grafana stack for DriftQ. Ships with:
- Prometheus scrape config for the broker at
:8080/metrics - Grafana preprovisioned with a Prometheus datasource
- A starter DriftQ Overview dashboard
- Basic alert rules (broker down, high lag, high consumer latency)
- Optional OpenTelemetry Collector (OTLP) for future traces/metrics
Works standalone. When
driftqdis not running, the dashboard will just show no data.
git clone https://github.com/driftq-org/DriftQ-Observability.git
cd driftq-observability
docker compose up -dOpen Grafana: http://localhost:3000 (user: admin, pass: admin).
Prometheus: http://localhost:9090
By default, Prometheus scrapes host.docker.internal:8080. If your broker runs elsewhere, edit prometheus/prometheus.yml:
- job_name: "driftqd"
static_configs:
- targets: ["<your-host>:8080"]Restart:
docker compose restart prometheusgrafana/
provisioning/{datasources,dashboards}
dashboards/driftq-overview.json
prometheus/
prometheus.yml
rules/driftq_rules.yml
otel-collector/config.yaml
docker-compose.yml
- DriftQBrokerDown – Prometheus cannot scrape the broker.
- DriftQHighLag –
max(driftq_partition_lag) > 10kfor 5m. - DriftQHighConsumerLatency –
max(driftq_consumer_latency_ms) > 5sfor 5m.
Wire alertmanager later by adding an alerting section in Prometheus config.
- Add/rename metrics in your broker; update PromQL in the dashboard JSON.
- Add tracing by pointing your apps to OTLP (
:4317gRPC /:4318HTTP).
Apache 2.0 – see LICENSE.