Reliability and observability

Service level indicator

Also known as SLI

By WeavePublished 1 min read

Definition

A service level indicator, or SLI, is a carefully defined quantitative measure of a service behavior that matters to users. Common examples include availability, request latency, error rate, and throughput.

Measure a behavior that matters

An SLI turns a service question into a measurement. Can users complete a request? How long does it take? How often does the service return the correct result?

For an illustrative search API, an availability SLI might be the fraction of well-formed requests that succeed. A latency SLI might use the time observed by the client, which can include delays that server-side timing misses.

SLI, SLO, and SLA

An SLI is the measurement. A service level objective, or SLO, is the target for that measurement. A service level agreement, or SLA, is an agreement that may attach consequences to missing a target.

The terms are related but interchangeable wording can cause confusion. A dashboard showing an error rate is not itself an objective.

Choose a small useful set

Collecting every available metric does not create a better SLI. Select a few indicators that represent the user journeys and system behaviors the team needs to manage. Document the aggregation window, population, exclusions, and source.

Inspect distributions where averages hide tail behavior. A service can have a good mean latency while a meaningful group of users experiences very slow responses. An SLI should support action when it changes, so connect it to a response and an owner.

How this relates to Weave

Weave focuses on engineering work and delivery evidence rather than replacing service telemetry. Teams can connect an SLI change to the code, review, and release history that may explain it. Keep the service's user-facing definition in the system that measures the behavior directly.

Explore Engineering intelligence

Sources and further reading

  1. Service Level Objectives, Google SRE