Getting a handle on the distributed tracing space can be a bit confusing. Here's a quick summary...
Open Source Tracers
There are a number of popular open source tracers, which is where Zipkin sits:
Commercial Tracers
There are also a lot of vendors offering commercial monitoring/observability tools which are either centred around or include distributed tracing:
- Appdynamics
- AWS X-Ray
- Azure Application Insights
- Datadog
- Dynatrace
- Google Cloud Trace
- Honeycomb
- Lightstep
- New Relic
- SignalFX
- (probably 100 more...)
Standardisation Efforts
Alongside all these products are numerous attempts at creating standards around distributed tracing. These typically start by creating a standard API for the trace-recording side of the architecture, and sometimes extend to become prescriptive about the content of traces or even the wire format. This is where OpenTracing fits in. So it is not a tracing solution itself, but an API that can be implemented by the trace recording SDKs of multiple tracers, allowing you to swap between vendors more easily. The most common standards are:
- OpenTracing
- OpenCensus
- OpenTelemetry
Note that the first two in the list have been abandoned, with their contributors joining forces to create the third one together.[1]
[1] https://opensource.googleblog.com/2019/05/opentelemetry-merger-of-opencensus-and.html