BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Merging OpenTracing and OpenCensus into a Single Distributed Tracing Framework

Merging OpenTracing and OpenCensus into a Single Distributed Tracing Framework

Bookmarks

The OpenTracing and OpenCensus projects have announced that they will merge and create a single, unified project. The goals of the merge include creating a single instrumentation standard, maintaining essential functionality without including every feature from both projects, a loosely coupled architecture to enable pluggability, and cover within its scope traces, metrics and logs.

OpenCensus provides both tracing and metrics APIs while OpenTracing provides a tracing API. The tracing features of both aim to provide a consistent way to trace across different systems and languages.

OpenTracing provides an API for integrating tracing into an application by providing a framework for distributed context propagation. OpenTracing's key interface - Tracer - "abstracts away the differences among numerous tracer implementations". Tracer implementations include Jaeger, Datadog, and Instana. The underlying tracer implementation can thus be changed without having to change the instrumented code.

OpenCensus has APIs for metrics collection as well as tracing. Both projects have the concept of a trace as a group of spans - where each span represents a single operation. OpenCensus has "exporters" that can be used to export the collected data, to various backends like Google Stackdriver, Elasticsearch, Jaeger and Prometheus or one's own custom backend. In addition, OpenCensus has tags - key value pairs that are typically part of time series metrics - that are associated with both metrics and traces. There is a proposal to add top level support for logging, so that a span can be correlated with log entries, but the actual integration with specific logging frameworks is not specified by the spec.

In a recent monthly call of the OpenTracing Specification Council, Ted Young from LightStep explained that the governance structure of the new project will probably be based on how Kubernetes works. Although more details of the governance structure are not forthcoming yet, the combined leadership team will consist of two founders from each project, and a fifth neutral  member Sarah Novotny. The technical track for the new project is already underway, and a Java prototype is being developed. The combined project, temporarily being called OpenConsensus, will be ultimately part of the CNCF.

One of the stated goals of the new project is to ease migration for existing users of both projects.

Rate this Article

Adoption
Style

BT