Monitoring and understanding failures in monoliths or small systems starts with looking at a single component in isolation. Multiservice architecture invalidates this assumption because end-user requests now traverse dozens of components. Looking at a service in isolation simply does not give you enough information: each is just one side of a bigger story.
Distributed tracing summarizes all sides of the story into a shared timeline. Distributed tracing tools shine a light on the relationship between components, from the very top of the stack to the deepest component in the system, which gives the feeling of working with a single system even while working in distributed environments.
José Carlos Chávez explains how distributed tracing works, what you can use it for, and how tools like Zipkin can help.
José Carlos Chávez is a software engineer at Typeform and a mathematics student at the University of Barcelona. He enjoys working with APIs and distributed tracing. José is the author of the official OpenTracing API library and Zipkin instrumentation for PHP and is part of the Zipkin team. While not working with code, you can find him sipping on a craft beer.
©2018, O’Reilly UK Ltd • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org