Engineering organizations are trading the old monoliths with Microservices for scalability, reliability and agility, but debugging the system calls across the Microservices is not straight-forward. Opentracing provides framework to debug and trace the system calls across the Microservices.

opentracing_meme

Major debugging issues which engineering teams face after splitting the monolith into microservices are following:

Famous distributed tracing systems

Why Opentracing?

Opentracing Concepts

Example

Lets say we have 3 Microservices

Source Code : https://github.com/anshulpatel25/distributed_tracing

We will be using above source code to get the execution time for PaymentService and OrderService, when they are called from the MyService.

Output

opentracing

From the above Gantt chart we can observe the following:

Reference(s)