In the previous sections, we saw how OpenTracing allows us to create and propagate span information across microservice boundaries. But, how and, more importantly, where is this information collected and processed? After all, having this information available without the means to slice and dice it greatly diminishes its value.
As we mentioned previously, one of the key design goals of the OpenTracing framework is to avoid vendor lock-in. To this end, when it comes to span collection and visualization, you can either select an open source solution such as Uber's Jaeger [11] or Elastic's APM [5], which you host yourself. Alternatively, you can use one of the several available Software as a Service ...