Reliability and observability

Service level objective

Also known as SLO

By WeavePublished 1 min read

Definition

A service level objective, or SLO, is a target value or range for a service level indicator. It states the level of service a team aims to provide over a defined period and measurement boundary.

A target tied to a measurement

An SLO might state that 99.9% of valid requests should succeed during a calendar month, or that 95% of requests should return within 300 milliseconds. The target is meaningful only when the corresponding SLI, time window, and exclusions are clear.

Set a target people can use

An illustrative API team chooses a latency objective based on what users notice and what the service can reliably provide. A target that is too loose may fail to prompt useful investment. A target that is impossibly strict can encourage teams to ignore it or spend resources without improving the experience.

The objective is a decision aid. It helps a team balance reliability work with feature work and understand when an error budget is being consumed.

Interpret a miss in context

Missing an SLO does not automatically identify the cause. A deployment, dependency outage, capacity limit, or measurement problem may be involved. Check the evidence and the user impact.

Avoid turning an SLO into an individual performance target. Reliability is a property of a system, and the work needed to improve it often crosses team boundaries. Review the target as the service and its users change.

How this relates to Weave

Weave can help teams investigate the engineering changes associated with a service trend, while the SLO itself should be calculated from the service data that represents the user experience. Use both views to decide whether a reliability investment addresses the condition that caused the miss.

Explore Engineering intelligence

Sources and further reading

  1. Service Level Objectives, Google SRE