OpenTracing Integration

OpenTracing is a popular way for developers to gather data about response times of their microservices and distributed processing for production monitoring. The OpenTracing project is under the umbrella of Cloud Native Computing Foundation (CNCF), the organization managing many of the popular cloud native open source technologies.

Introduction to Application Monitoring and OpenTracing

OpenTracing is an open and vendor neutral API for tracing which enables users to avoid vendor lock-in when collecting data for analysis to understand distributed application performance. It also enables developers of company-unique applications to gather application specific performance data. Furthermore framework developers are able to provide tracing functionality in a standard fashion to enable better insights into framework behavior. OpenTracing based technologies, like Jaeger, is used by many web-scale companies like Uber, Apple, and Yelp to get deeper visibility into their highly distributed and dynamic applications.

OpenTracing Integration Discussion - List of Individual Traces

Collecting Application Traces with OpenTracing

Collecting OpenTracing traces with the provided API is entirely a manual process. The reason developers may choose an API based approach is to have complete control of what is traced to improve the precision of data and add context to the data. OpenTracing specific code must be added to the microservice’s code base to collect traces to form a span. Conversely, Instana AutoTrace™ is able to collect tracing data automatically for common programming languages, frameworks and (database) connectors. Instana seamleassly correlates automatic tracing data from one service with spans provided by the manual OpenTracing approach from other services.

OpenTracing performance monitoring centers around metrics relevant to its traces in within the environment. Instana’s OpenTracing integration natively integrates OpenTracing provided traces with information collected by Instana AutoTrace™.

Instana’s OpenTracing Integration

Instana is data source agnostic. It will automatically process request timing spans from both automatic and manual instrumented code.

Instana’s OpenTracing implementations are open source and hosted on GitHub:

Instana collects OpenTracing data in realtime. Traces are named using our service mapper to create a ‘Service’ under management. Naming is automatic, but can be adjusted to fit the users requirements. Each generated trace is collected, grouped and analysed within 3 seconds of its ingestion. For each configured service, Instana automatically creates a dashboard and tracks KPIs (throughput, latency and error rate) to monitor the quality of the named Services. Using Instana’s AI capabilities, any anomalies are detected and Incidents are generated.No need to build custom rules to manage performance, Instana does this automatically.

Visualizing OpenTracing Traces

Collected traces may be filtered by various criteria, for example: erroneous, start and end points, metadata content, status code etc.
OpenTracing Integration - a Trace inside Instana

Configuring Instana’s OpenTracing Integration

Ready to start monitoring OpenTracing? Begin by signing up for an Instana Trial or Account. If you already have an account, check out Instana’s OpenTracing Monitoring Documentation.

Play with Instana’s APM Observability Sandbox

Start your FREE TRIAL today!