Mastering Distributed Tracing

More Information
  • How to get started with using a distributed tracing system
  • How to get the most value out of end-to-end tracing
  • Learn about open standards in the space
  • Learn about code instrumentation and operating a tracing infrastructure
  • Learn where distributed tracing fits into microservices as a core function

Mastering Distributed Tracing will equip you to operate and enhance your own tracing infrastructure. Through practical exercises and code examples, you will learn how end-to-end tracing can be used as a powerful application performance management and comprehension tool.

The rise of Internet-scale companies, like Google and Amazon, ushered in a new era of distributed systems operating on thousands of nodes across multiple data centers. Microservices increased that complexity, often exponentially. It is harder to debug these systems, track down failures, detect bottlenecks, or even simply understand what is going on. Distributed tracing focuses on solving these problems for complex distributed systems. Today, tracing standards have developed and we have much faster systems, making instrumentation less intrusive and data more valuable.

Yuri Shkuro, the creator of Jaeger, a popular open-source distributed tracing system, delivers end-to-end coverage of the field in Mastering Distributed Tracing. Review the history and theoretical foundations of tracing; solve the data gathering problem through code instrumentation, with open standards like OpenTracing, W3C Trace Context, and OpenCensus; and discuss the benefits and applications of a distributed tracing infrastructure for understanding, and profiling, complex systems.

  • A thorough conceptual introduction to distributed tracing
  • An exploration of the most important open standards in the space
  • A how-to guide for code instrumentation and operating a tracing infrastructure
Page Count 444
Course Length 13 hours 19 minutes
ISBN 9781788628464
Date Of Publication 28 Feb 2019
Exercise 1 – the Hello application
Exercise 2 – the first trace
Exercise 3 – tracing functions and passing context
Exercise 4 – tracing RPC requests
Exercise 5 – using baggage
Exercise 6 – auto-instrumentation
Exercise 7 – extra credit


Yuri Shkuro

Dr. Yuri Shkuro holds a Ph.D. in Computer Science from University of Maryland, College Park, and a Master’s degree in Computer Engineering from MEPhI (Moscow Engineering & Physics Institute), one of Russia's top three universities. Yuri is the author of many academic papers in the area of machine learning and neural networks, which have been cited in over 130 other publications.

Yuri’s impressive career includes 15 years on Wall Street, building trading and risk management systems for derivatives at top investment banks, Goldman Sacks, JPMorgan Chase, and Morgan Stanley, and over three years on Uber’s Infrastructure & Observability team. His open-source credentials include being a co-founder and a member of the Specification Council of the OpenTracing project, and the creator and current tech lead of Jaeger, a distributed tracing system developed at Uber. Both projects are incubating at the Cloud Native Computing Foundation.

Outside of his academic and professional career, Yuri was an editor and co-producer of several animated shorts directed by Lev Polyakov, including:
Only Love (2008), which screened at over 30 film festivals and won several awards
Piper the Goat and the Peace Pipe (2005), a winner at the Ottawa International Animation Festival