From zero to distributed traces: An OpenTracing tutorial
Yuri Shkuro, Bryan Liles, Won Jun Jang, and Prithvi Raj walk you through implementing distributed tracing in modern applications, using the CNCFs OpenTracing project. You'll explore a set of sample applications and learn how to instrument them for tracing. You'll also use a tracing system such as Jaeger, Zipkin, or LightStep to visualize complex transactions that might span multiple processes.
Talk Title | From zero to distributed traces: An OpenTracing tutorial |
Speakers | Bryan Liles (Heptio), Yuri Shkuro (Uber Technologies), Won Jun Jang (Uber), Prithvi Raj (Uber) |
Conference | O’Reilly Velocity Conference |
Conf Tag | Build resilient systems at scale |
Location | New York, New York |
Date | October 2-4, 2017 |
URL | Talk Page |
Slides | Talk Slides |
Video | |
Modern applications have evolved from single-threaded monoliths to concurrent, asynchronous, distributed microservices. Those who build them are beginning to understand the role and importance of distributed tracing. After all, it’s the most direct way to understand how and why complex systems misbehave, by visualizing transactions as they go through a system, crossing process boundaries. Every organization that’s adopted microservices at scale has had to deploy a distributed tracing solution—first with Dapper at Google, then with Zipkin at Twitter, and now with various open source and commercial tracing solutions at many other technology companies. As our industry migrates toward microservice architectures, distributed tracing will become the table stakes for visibility into production systems; thus, developers must learn how to integrate and deploy tracing technology effectively. Yuri Shkuro, Bryan Liles, Won Jun Jang, and Prithvi Raj take you from zero to implementing useful traces with OpenTracing, walking you through visualizing the critical path for transactions with microservices, enabling debugging, latency monitoring, and overall performance gains. The goal throughout is to demystify distributed tracing and convey best practices through interactive lessons, placing a special focus on source-code instrumentation and integration strategies, as historically those have been the most daunting aspect of distributed tracing for newcomers. Topics include: