Observability Stack
Production monitoring with Prometheus, Grafana, Watchtower, and optional Cloudflare Tunnel for remote access.
Services
| Service | Port | Purpose |
|---|---|---|
| Prometheus | 9090 | Scrapes :9888/metrics every 15s |
| Grafana | 3000 | Dashboards, alerting rules, alert routing |
| Watchtower | — | Auto-updates containers from registry |
| Cloudflare Tunnel | — | Zero-trust remote access (optional) |
Docker Compose
Bash
# docker/production/docker-compose.yml (monitoring excerpt)
prometheus:
image: prom/prometheus:v2.51.0
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
ports: ["9090:9090"]
grafana:
image: grafana/grafana:10.4.0
environment:
GF_SECURITY_ADMIN_PASSWORD: ${GRAFANA_PASSWORD}
ports: ["3000:3000"]
depends_on: [prometheus]
watchtower:
image: containrrr/watchtower
volumes: ["/var/run/docker.sock:/var/run/docker.sock"] RUST_LOG Configuration
Rust
# Default
RUST_LOG=warn,tetrapus=info
# Verbose ingestion debugging
RUST_LOG=warn,tetrapus=info,nerve_ingest=debug
# Full trace
RUST_LOG=trace Alert Routing
Grafana alert rules can route notifications to PagerDuty, Slack, or Email via contact points. Configure threshold alerts on key metrics like tetrapus_fps < 30 or tetrapus_ingest_failed_total rate > 10/s.
Questions?
Reach out for help with integration, deployment, or custom domain codecs.