LightStep

LightStep [𝑥]PM Documentation

Welcome to the LightStep developer hub. You'll find comprehensive guides and documentation to help you start working with LightStep [𝑥]PM as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    

LightStep [𝑥]PM records a vast amount of data about your production system: so much that a search on Explorer often only surfaces data from the last few seconds.

Streams provide the flexibility and specificity of arbitrary Explorer queries with the durability and time series statistics of tracked operations.

What are Streams?

Streams tell LightStep to summarize the behavior of arbitrary slices of that data, creating plentiful example traces along the way. Both the statistical time series data and example traces are stored for all time, and can be subject to SLAs and alerting rules like any tracked operation in LightStep [𝑥]PM.

How do I use it?

It’s easy to create Streams:

  • Navigate to Explorer via the top navigation bar
  • Enter your search (see full syntax notes below)
  • Click on the “Create Stream” icon at the right of the search box

To return to the results of a Stream at any time:

  • Navigate to “Streams” via the top navigation bar
  • Click on the search query text in the resulting table
  • The Stream results are a stable and shareable URL: perfect for alert messages, slack messages, and bot auto-responses

Query Syntax: Streams (and Explorer) supports queries that combine zero or more of the following term types:

component:<name> → confine the query to a particular component

operation:<name> → confine the query to a particular operation

tag:<key>=<value> → query for a particular tag key-value pair

All query terms are AND’ed together.

Example queries

Query
Traces and statistics for

component:api-server tag:error=true

api-server calls when errors occurred

operation:buy_something tag:customer_id=BigMoney

buy_something transactions associated with your customer, BigMoney

tag:username=MyCEO

your CEO’s requests

tag:customer_id=BigMoney tag:experiment_id=42

experiment 42’s impact on your customer, BigMoney

component:ios-app tag:beta_user=true

beta_users of the ios-app component

tag:status_code=500

any spans, regardless of the component, with a status_code of 500

Using SLAs and Alerts

Any Stream can be paired with an SLA and notification policy; this allows for continuous reliability monitoring of any slice of your production data in LightStep. For instance, some LightStep users assign SLAs to particular customer_ids within their own systems to detect and correct per-customer problems before they're even reported.

Managing Streams Programmatically (via APIs)

Streams can be created, managed, and even added to LightStep dashboards via LightStep's programmatic API. Details can be found in the LightStep Public APIs.