This gives you the complete setup for distributed tracing with both Jaeger and Grafana Tempo, including OpenTelemetry instrumentation for Python, Node.js, and Go. It covers the Docker Compose and Kubernetes deployments, context propagation between services, and sampling strategies to manage trace volume. The code examples show how to add spans, set attributes, and handle errors across your microservices. I've used this exact setup to debug latency spikes in production where a single slow database query was cascading through six different services. The trace visualization makes it immediately obvious where your bottlenecks are hiding.
npx skills add https://github.com/wshobson/agents --skill distributed-tracing