The Hidden Gems of Distributed Tracing
summary
Shows how to use OpenTelemetry collector with Jaeger and Prometheus to find real bottlenecks: a Quarkus demo app with two services (hobby → activity) exports traces to Jaeger and metrics to Prometheus, traces show exceptions and a 504 spike in the last hour. Demonstrates three practical sampling controls—probabilistic (demo set ~80%), rate limiting, and tail-based sampling with latency and status-code policies—and a custom trace-debug header implemented via a JAX-RS request filter to exclude debug traces so SLO metrics stay clean.
AI-written summary · about
chapters (14)
- 0:00Introduction to talk
- 1:28From monoliths to distributed tracing
- 5:02How distributed tracing helps
- 7:32OpenTelemetry overview
- 10:01Sampling strategies explained
- 14:54Demo setup and context
- 18:55Viewing traces in Jaeger
- 21:43Sampling strategies in practice
- 24:12Debugging with custom headers
- 29:06Recording errors in traces
- 31:59Tail-based sampling policies
- 33:00Connecting metrics and traces
- 35:06Caching insights with metrics
- 36:51Resources and closing
related talks
50mThe hidden gems of distributed tracing
31mDistributed Tracing Integration with OpenTelemetry and Knative
50mI'm Tracing you!
37mOpenTelemetry & Distributed Tracing: A Jaeger v2 Deep Dive
34mDistributed Tracing Integration with OpenTelemetry and Knative
42mDistributed Tracing Integration with OpenTelemetry and Knative
47mUsing metric and traces to diagnose our cloud-native applications
43mPractical Introduction to OpenTelemetry Tracing
