Instrumentation

View all content tagged with Instrumentation

Product Docs

Product Docs

.NET Auto-Instrumentation

If your app is written in .NET, you can get started quickly with Lightstep. Download the Auto-Installer, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported libraries will begin sending trace data to Lightstep.

Product Docs

Add Spans to Create Traces

Once you've implemented your tracers and confirmed that they are communicating with your Lightstep Satellite, it's time to add spans to your operations and connect the spans together to create a full trace that you can observe in Lightstep.

Product Docs

Already Instrumented?

If you've already instrumented your system, but were using another tracing library, no worries! Lightstep can ingest that instrumentation with almost no additional code needed.

Product Docs

Auto-Instrument Your Framework

Auto-instrumentation provides out-of-the-box tracing of popular frameworks (such as Django and Spring), common protocols (HTTP, gRPC) and data store drivers (MySQL, MongoDB). You can see traces in Lightstep almost immediately.

Product Docs

C# Add Spans

Manually add spans to your C# service.

Product Docs

C#/.NET Instrumentation

Use C#/.NET to instrument your app for distributed tracing using OpenTracing.

Product Docs

C#/.NET Manual Instrumentation with OpenTracing

Configure your tracer to communicate with the Lightstep Satellites and create a single span on your C# service. You install both the OpenTracing API and Lightstep tracer and then use the OpenTracing and Lightstep APIs to instrument your code.

Product Docs

C#/.NET Quick Start

If your app is written in .NET, you can get started quickly with Lightstep. Download the Auto-Installer, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported libraries will begin sending trace data to Lightstep.

Product Docs

C++ Add Spans

Manually add spans to your C++ service.

Product Docs

C++ Instrumentation Using OpenTracing

Use C++ to instrument your app for distributed tracing using OpenTracing.

Product Docs

C++ Manual Instrumentation for OpenTracing

This Quick Start will have you configure your tracer to communicate with the Lightstep Satellites and create a single span on your C++ service. You install both the OpenTracing API and Lightstep tracer and then use the OpenTracing and Lightstep APIs to instrument your code.

Product Docs

C++ Quick Start

This Quick Start will have you configure your tracer to communicate with the Lightstep Satellites and create a single span on your C++ service. You install both the OpenTracing API and Lightstep tracer and then use the OpenTracing and Lightstep APIs to instrument your code.

Product Docs

Coding For Observability

Best practices in distributed tracing for documenting the system behaviors that are expected to change along with a particular code change.

Product Docs

Create and Manage Access Tokens

Lightstep use access tokens to identify the project the tracer is reporting for. Lightstep Satellites need this token to accept and store span data from the tracer.

Product Docs

Dimensionality in Observability

A key part of an organization's observability strategy is creating and maintaining the ability to think about and compare applications “horizontally”. When telemetry for observability is unique to each application or framework it causes new organizational issues.

Product Docs

Go Add Spans

Manually add spans to your Go service.

Product Docs

Golang Instrumentation Using OpenTracing

Use Go to instrument your app for distributed tracing using OpenTracing.

Product Docs

Golang Manual Instrumentation with OpenTracing

Configure your tracer to communicate with the Lightstep Satellites and create a single span on your Go service. You install both the OpenTracing API and Lightstep tracer and then use the OpenTracing and Lightstep APIs to instrument your code.

Product Docs

Golang Quick Start

This Quick Start will have you configure your tracer to communicate with the Lightstep Satellites and create a single span on your Go service. You install both the OpenTracing API and Lightstep tracer and then use the OpenTracing and Lightstep APIs to instrument your code.

Product Docs

Instrument Your Code

While distributed tracing can give you a great picture of the health and efficiency of your system, the information you get is only as good as the information you provide through instrumentation of your app. Too little and you may not find the actual root cause of an issue. Too much, or focusing too far down in the stack, and you'll end up with noise that distracts from the real issues.

Product Docs

Instrument with Istio as Your Service Mesh

Lightstep works with many service meshes, and Lightstep + Istio is an easy way to get quick visibility into service performance and availability from the perspective of the service mesh.

Product Docs

Java Add Spans

Manually add spans to your Java service.

Product Docs

Java Auto-Instrumentation

If your app is written in Java, you can get started quickly with Lightstep. Download the Java SpecialAgent, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported third-party framework libraries (like the Elasticsearch client, RxJava, or the Kafka client) will begin sending trace data to Lightstep.

Product Docs

Java Instrumentation Using OpenTracing

Use Java to instrument your app for distributed tracing using OpenTracing.

Product Docs

Java Manual Instrumentation with OpenTracing

Configure your tracer to communicate with the Lightstep Satellites and create a single span on your Java service. You install both the OpenTracing API and Lightstep tracer and then use the OpenTracing and Lightstep APIs to instrument your code.

Product Docs

Java Quick Start

If your app is written in Java, you can get started quickly with Lightstep. Download the Java SpecialAgent, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported third-party framework libraries (like the Elasticsearch client, RxJava, or the Kafka client) will begin sending trace data to Lightstep.

Product Docs

JavaScript Add Spans

Manually add spans to your JavaScript service.

Product Docs

JavaScript Instrumentation Using OpenTracing

Use JavaScript to instrument your app for distributed tracing using OpenTracing.

Product Docs

JavaScript Manual Instrumentation with OpenTracing

Configure your tracer to communicate with the Lightstep Satellites and create a single span on your JavaScript service. You install both the OpenTracing API and Lightstep tracer and then use the OpenTracing and Lightstep APIs to instrument your code.

Product Docs

JavaScript/Node Quick Start

If your app is written in Node.js, you can get started quickly with Lightstep. Download the Auto-Installer, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported libraries will begin sending trace data to Lightstep.

Product Docs

Lightstep Integrations

Lightstep integrates with leading cloud-native technologies, service meshes for microservices, and enterprise data visualization and collaboration tools. These turnkey integrations make it easy to deploy Lightstep across large-scale production systems so users get the unrivaled performance insights it provides when they need it and as part of their standard, established workflows.

Product Docs

Load Balance Lightstep

Having effective load balancing of your Lightstep Satellites is important to ensure a consistent and adjustable recall window for the Satellite pool and allow for efficient use of Satellite computing resources.

Product Docs

Manage Email Notifications

Lightstep automatically determines how well your services are instrumented and performing, and sends email notifications that let you know how you're doing.

Product Docs

Manual Instrumentation Using OpenTracing

While auto-instrumentation using the Lightstep auto-installers can get you started, you'll often need to use manual instrumentation to get full distributed tracing.

Product Docs

Measure Your Instrumentation Quality

The span data that you view and use in Lightstep to observe and monitor distributed traces depends on the quality of your tracing instrumentation. The better and more comprehensive your instrumentation is, the better Lightstep can collect and analyze your data to provide highly actionable information. Lightstep analyzes the instrumentation on your services and determines how you can improve it to make Lightstep work even better for you.

Product Docs

Monitor Lightstep Performance

Lightstep performance is based on the ingress and egress of data from the tracers to the Satellites, the amount of memory the Satellites have to store that data, and the length of the recall window. You can monitor the performance of Lightstep and tune Satellites to avoid dropped spans.

Product Docs

Monitor Services, Tracers, and Satellites

The Reporting Status page provides an active view of the Lightstep Tracer clients and Satellites over a trailing 60-second window.

Product Docs

Node.js Auto-Instrumentation

If your app is written in Node.js, you can get started quickly with Lightstep. Download the Auto-Installer, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported libraries will begin sending trace data to Lightstep.

Product Docs

Objective-C Add Spans

Manually add spans to your Objective-C service.

Product Docs

Objective-C and Swift Instrumentation Using OpenTracing

Use Objective-C and Swift to instrument your app for distributed tracing using OpenTracing.

Product Docs

Objective-C and Swift Manual Instrumentation

Configure your tracer to communicate with the Lightstep Satellites and create a single span on your Objective C/Swift service. You install both the Lightstep tracer and then use the Lightstep API to instrument your code.

Product Docs

Objective-C and Swift Quick Start

This Quick Start will have you configure your tracer to communicate with the Lightstep Satellites and create a single span on your Objective C/Swift service. You install both the Lightstep tracer and then use the Lightstep API to instrument your code.

Product Docs

Observe Mobile Device Behavior

Learn how Lightstep handles mobile devices

Product Docs

PHP Add Spans

Manually add spans to your PHP service.

Product Docs

PHP Instrumentation Using OpenTracing

Use PHP to instrument your app for distributed tracing using OpenTracing.

Product Docs

PHP Manual Instrumentation for OpenTracing

Configure your tracer to communicate with the Lightstep Satellites and create a single span on your PHP service. You install the Lightstep tracer and then use the Lightstep API to instrument your code.

Product Docs

PHP Quick Start

This Quick Start will have you configure your tracer to communicate with the Lightstep Satellites and create a single span on your PHP service. You install the Lightstep tracer and then use the Lightstep API to instrument your code.

Product Docs

Performance Is A Shape. Cost Is A Number: Sampling

Learn how distributed tracing sampling impacts the ability to analyze observability data, using key=value restrictions for some keys and grouping the output based on other keys.

Product Docs

Python Add Spans

Manually add spans to your Python service.

Product Docs

Python Auto-Instrumentation

If your app is written in Python, you can get started quickly with Lightstep. Download the Auto-Installer, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported frameworks, data stores, and libraries will begin sending trace data to Lightstep.

Product Docs

Python Instrumentation Using OpenTracing

Use Python to instrument your app for distributed tracing using OpenTracing.

Product Docs

Python Manual Instrumentation with OpenTracing

Configure your tracer to communicate with the Lightstep Satellites and create a single span on your Python service. You install both the OpenTracing API and Lightstep tracer and then use the OpenTracing and Lightstep APIs to instrument your code.

Product Docs

Python Quick Start

If your app is written in Python, you can get started quickly with Lightstep. Download the Auto-Installer, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported frameworks, data stores, and libraries will begin sending trace data to Lightstep.

Product Docs

Quick Start: Instrumentation

Learn how to instrument your app for distributed tracing using OpenTracing and Lightstep.

Product Docs

Ruby Add Spans

Manually add spans to your Ruby service.

Product Docs

Ruby Auto-Instrumentation

If your app is written in Ruby, you can get started quickly with Lightstep. Download the Auto-Installer, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported libraries will begin sending trace data to Lightstep.

Product Docs

Ruby Instrumentation Using OpenTracing

Use Ruby to instrument your app for distributed tracing using OpenTracing.

Product Docs

Ruby Manual Instrumentation with OpenTracing

Configure your tracer to communicate with the Lightstep Satellites and create a single span on your Ruby service. You install both the OpenTracing API and Lightstep tracer and then use the OpenTracing and Lightstep APIs to instrument your code.

Product Docs

Ruby Quick Start

If your app is written in Ruby, you can get started quickly with Lightstep. Download the Auto-Installer, then configure it to communicate with your Lightstep Satellites. When you deploy your app, all supported libraries will begin sending trace data to Lightstep.

Product Docs

Tracer Supported Languages, Protocols, and Dependencies

Lightstep tracers work with the OpenTracing API to communicate with Lightstep Satellites. Each of the language-specific Lightstep tracers have their own implementation, and therefore unique configuration. This topic shows the Lightstep supported tracers along with whether they support the `HTTP` or `gRPC` transport.

Product Docs

Understand Distributed Tracing

Distributed tracing provides a view of the life of a request as it travels across multiple hosts and services communicating over various protocols. With distributed tracing implemented, you have a window into performance at every step in the request.

Product Docs

Use Jaeger Agent with Lightstep

If you're currently using Jaeger for tracing, you can configure the Jaeger agent to send that data directly to Lightstep Satellites with little change. This is a great way to reuse your existing instrumentation architecture either directly in production or to quickly try out Lightstep for the first time.

Product Docs

Use Tags to Find Issues Fast

There are tags that work very well with Lightstep in addition to the OpenTracing semantic conventions. Any tag that you add to your span data will enable more segmentation, making it easier to find, filter, and group your span data in Lightstep. Lightstep doesn't have cardinality limitations, so the more tags you use, the greater your insights will be.

Product Docs

Use Zipkin with Lightstep

If you're currently using Zipkin for tracing, you can configure it to send that data directly to Lightstep Satellites with little change. This is a great way to reuse your existing instrumentation architecture either directly in production or to quickly try out Lightstep for the first time.