Debugging and Profiling Distributed Applications Using OpenTracing
summary
Demonstrates using OpenTracing with Jaeger in PHP to trace a microservice flow (auth → email → analytics) over HTTP and RabbitMQ, producing a 5‑operation trace. Covers span propagation via headers, client‑side sampling, agents/collectors (Docker images), Jaeger UI features (dependency graphs, raw JSON), and PHP‑specific advice: Symfony decorators, a proxy generator to avoid eager initialization, handling 64‑bit vs 128‑bit trace IDs, risks of sampling loss, packet size limits, clock synchronization, and an observed ~10% overhead.
AI-written summary · about
chapters (13)
- 0:00Debugging distributed apps
- 4:15Microservice debugging
- 7:15OpenTracing overview
- 10:50OpenTracing example
- 18:21PHP OpenTracing nuances
- 23:03Jaeger visualization
- 27:41PHP tracing tools
- 31:17Q&A
- 33:26OpenTracing challenges
- 36:09Jaeger performance
- 38:57Agent limits
- 39:39Tracing load issues
- 41:06Automation & testing
related talks
34mWould You Like Some Tracing With Your Monitoring?
51mDistributed Tracing for microservices with Jaeger
39mThe Hidden Gems of Distributed Tracing
31mUnderstanding Microservices with Distributed Tracing
50mThe hidden gems of distributed tracing
35mNavigating the Distributed Systems Execution Maze With OpenTracing
57mDistributed Tracing: How the Pros Debug Concurrent and Distributed Systems
38mDistributed Tracing: Practices, Patterns & Technologies for Debugging Microservices
