Skip to main content

Create Service Level Objectives

Service Level Objectives (SLOs) measure how reliably your services meet their targets. Coralogix supports three SLO types so you can match the SLO to the signal you actually want to track. Pick one, share the same creation workflow, and only diverge where the configuration genuinely differs.

Ready to get started?

Go to APM → SLO Center → + Create SLO and follow the steps in this guide.

Pick your SLO type​

TypeBest forSLI mechanismQuery style
APMService-level errors and latency on instrumented servicesBuilt-in: errors over total events, percentile or average latency against a thresholdPick a service and filters; Coralogix generates the PromQL
Event-basedReliability as a ratio of successful events to total eventsgood / total over the SLO time frameTwo PromQL queries
Time window-basedPass/fail per fixed interval, useful for sustained-latency targetsCount of windows that meet a threshold over total windowsOne PromQL query plus operator and threshold

What you need​

The metric you want to measure sent to Coralogix, either directly, or derived from logs and spans with Event2Metrics.

Step 1: Define the SLO​

In the Coralogix portal, go to APM, then SLO Center, and select + Create SLO.

Fill in the SLO details:

FieldDescription
NameThe unique name identifying your SLO.
OwnerThe user responsible for maintaining and reviewing the SLO. Ownership defaults to the creator, but can be reassigned to any Coralogix team member.
Entity labels(Optional) Metadata used for filtering SLOs.
Description(Optional) Additional context or purpose of the SLO to clarify its scope and intent for other users.

Step 2: Select the SLO type​

Under SLO type, pick APM, Custom → Event-based, or Custom → Time window-based. If you pick APM, you then choose whether to track Errors or Latency.

Select SLO type

Step 3: Configure the SLO​

Select your SLO type to see its configuration steps. The remaining steps are shared across all types.

APM SLOs let you define reliability for a service without writing PromQL. Track a service's error rate against a target.

  1. Select a service to associate with the SLO.

  2. Apply Filters: narrow the scope of the SLO using label selections.

  3. Pick a Grouping Key: select one or more labels to split the SLO into permutations (for example, service_name, route). Each unique combination of label values becomes its own permutation, tracked independently. Available labels come from the selected service.

  4. Define the time frame and target success rate in Step 4: Set the target and time frame.

    APM Errors SLO

Tip
  • Filters can be adjusted through the builder.
  • To preview the underlying PromQL query that Coralogix generates from your APM SLO configuration, select the Show query icon in the top-right of the Configuration section. The query updates as you change the configuration.

Step 4: Set the target and time frame​

Define:

  • Time frame: the rolling compliance window (for example, 7, 14, 21, 28, or 90 days).
  • Target success rate: the percentage required to meet the SLO (for example, 99.9%).

Set target and time frame

These parameters bound the error budget and keep reliability goals aligned with operational requirements.

When data collection starts

Data collection for the SLO's metric begins at SLO creation. Initial calculations cover only data from that point onward. Once the SLO is older than its time frame, the system evaluates a full rolling window.

Step 5: Add exclusion windows​

While configuring an SLO, you can add exclusion windows: time ranges left out of the SLO's evaluation, so expected downtime such as planned maintenance is not held against it. Windows are defined per SLO, and all times are in UTC.

The Exclusion windows editor configuring a recurring window with a reason and a UTC schedule preview

  1. In the Exclusion windows section of the create or edit drawer, select Add window.
  2. Set the Exclusion type:
    • Recurring: repeats on a schedule. Set a Start date and time, a Recurrence interval (a number of hours, days, or weeks), and a Duration (a number of minutes, hours, or days). To end the series on a date, select Set termination date.
    • One-time: applies once. Set a Start, then set the End as either a date and time or a duration.
  3. Enter a Reason, such as planned maintenance.
  4. Save the SLO.

As you fill in the schedule, a preview shows when the window applies, for example Every 2 weeks 00:00–01:00 UTC. The duration must be shorter than the recurrence interval, and the start must be in the future.

After you save, manage these windows and see where they appear from the SLO Center.

Step 6: Tag SLO permutations with ownership​

Use Ownership tags to identify who owns each permutation of a grouped SLO. Each permutation can carry Service, Environment, and Team tags. Set values for the whole SLO group, or derive them from labels in the query so the tags follow the data.

The Ownership tags card sits at the bottom of the SLO creation form. A spinner appears in the card title while the SLO configuration is being validated.

Ownership tags card

For each of the three dimensions. Service, Environment, and Team: pick how to assign the tag:

ModeDescription
Manual valueApply fixed values to every permutation in the SLO group. For Service, pick one or more services already reported to your account. For Environment and Team, type a single value (for example, prod, payments).
Label valueThe tag values are read from labels in the SLO's query, so each permutation can carry a different owner. Pick one or more label keys from the dropdown; only label keys available in the current query are listed.

To clear a row, select the ✕ icon next to its value.

Note

Ownership tags label permutations; they do not create them. To split the SLO into permutations, use grouping in your query.

Step 7: Preview and validate​

The Preview panel validates your SLO in real time, ranks the worst-performing permutations, and surfaces AI-generated suggestions for the target, metric fit, and query shape. For details, see Preview and validate SLOs.

Quick summary:

  • Query validation: real-time checks with pass, warning, and fail statuses.
  • SLO smart-tip: AI-suggested target, metric-fit analysis, and query-shape guidance.
  • Status: the worst-performing permutations ranked by compliance, with per-permutation good/total counts and an overall state against your target.

Step 8: Save the SLO​

  • Select Create (or Save) to store the SLO.
  • Or select Save & create alert to immediately set up alerting based on the new SLO.

Only two things stop you from saving: a missing required field (such as the Name or Target) or a query that can't parse or run. Every other check in Query validation is advisory: a query that returns no data, or one that raises a warning, still saves. This lets you track valid but unconventional SLIs instead of having the form reject them.

SLO calculation example​

For an APM SLO with a 99% target evaluated over 7 days:

  • Total requests: 10,000
  • Threshold violations: 52

Current state:

SLI = (10000 − 52) / 10000 × 100 = 99.48%

The error budget allows 1% of requests to violate the threshold, 100 violations out of 10,000. After 52 violations, 48 remain.

Remaining budget = (100 − 52) / 100 × 100 = 48%

Query examples​

APM SLOs don't require you to write queries. When you select a service and choose Errors or Latency, Coralogix generates the underlying PromQL for you: the Good events and Total events queries for Errors, or the Window query for Latency. The generated queries run on span metrics (request counts for Errors, duration histograms for Latency). To view the exact PromQL for your configuration, select Show query in the APM step (Step 3).

Limitations​

When an SLO is first created, data collection for its metric begins at that point in time. Initial calculations are based solely on data from the moment of creation onward. Once the SLO age exceeds its time frame, the system uses the full SLO time frame as a rolling window.

Additional resources​

Use recording rule–based metrics safely in your SLO creation: see Recording rule–based metrics.

Next steps​

Learn how to evaluate the SLO in real time in Preview and validate SLOs, then set up notifications with SLO alerts.

Last updated on