Skip to content

zloom/telemetry

Repository files navigation

Telemetry

License: MIT Built by zloom.org

Production-ready Jaeger + OpenTelemetry setup with Cassandra, Prometheus, and Caddy.
Built for small VPS deployments using only Docker Compose.

Full explanation with architecture, trade-offs and usage:

👉 Jaeger Docker Setup: Production-Ready Tracing Server

Features

  • Distributed tracing with Jaeger
  • Metrics collection with Prometheus
  • Tail sampling via OpenTelemetry Collector
  • Scalable trace storage in Cassandra with TTL
  • SSL + CORS handled by Caddy
  • Optional trace generator for testing

Components

Component Role
caddy SSL, reverse proxy, basic auth (optional)
otel-collector Tail-based sampling, trace metrics
jaeger-query UI for traces and SPM
jaeger-collector Writes traces to Cassandra
cassandra Trace storage, with built-in TTL
cassandra-schema Storage initilialisation (TTL = 2 days)
prometheus Stores metrics from Collector & Cassandra
trace-generator Optional trace generator for dev

Server schema Architecture diagram: how components interact in the stack

Quick start

git clone https://github.com/zloom/telemetry.git
cd telemetry

# edit DOMAIN in caddy config or env

docker compose up -d         # for production
# or
docker compose -f compose.yaml -f compose.dev.yaml up -d   # for development with tracegen

Security

By default, dashboards like Jaeger and Prometheus are publicly accessible. Use Basic Auth via Caddy or integrate with your SSO.

Endpoints

License

This project is licensed under the MIT License.
Made with ❤️ by zloom.org

About

Minimal telemetry server in docker

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published