3 ms·
I'm a Jaeger developer at Uber, so this could be a bit biased. Jaeger is the only major open source distributed tracer I know of that conforms to the OpenTracin
by isaachier 9y ago
I'm a Jaeger developer at Uber, so this could be a bit biased. Jaeger is the only major open source distributed tracer I know of that conforms to the OpenTracing standard. OpenCensus and presumably Canopy require tracer-specific code to be embedded in your program. This makes you locked in to a given provider. You won't find many people who have tested them side by side. Jaeger follows the OpenTracing standard so you can embed generic tracer code and change your tracer on the fly. Once you do this, comparison testing is easy.
- mmclean 9y agoFYI, OpenCensus doesn't lock you in to a specific provider, rather it includes its own tracing implementation and exports traces back to your provider of choice
- rakyll 9y agoOpenCensus is not a vendor specific project. The data OpenCensus collects can be exportable to any tracing backend. We already have a Jaeger exporter for Go: https://godoc.org/go.opencensus.io/exporter/jaeger https://godoc.org/go.opencensus.io/exporter/jaeger. Code instrumented with OpenCensus can export to any backend by changing the registered backend.
- javajumbo 9y agoAnother Jaeger maintainer here. I would agree, Isaac's statement is not accurate. It's also not very relevant for comparison. Canopy is an internal, close source tracing system, so comparing its instrumentation API with OpenTracing is besides the point. Feature-wise, it's a much more mature project than Jaeger (older too). Just a few features off the top of my head that Canopy has over Jaeger: reverse context propagation for deferred sampling, user-controlled DSL that can be pushed through configuration to the edge to do selective sampling, advanced and user-customizable feature extraction data pipeline, UI that combines different visualizations for frontend and backend performance.