A Guide to Starting Blameless SLOs

Getting Started

Now that you have an introduction to the SLO components and their definitions, we can look to start building your components. We’ll start at the beginning with the User Journey.

Launching the User Journeys

The user journey is composed of SLOs which allow the user to examine the state of their reliability conformance.

  1. Click on the SLO Manager icon.
SLO Feature Nav Bar

The User Journeys window will open, display three options:

  • User Journeys
  • Error Budget Policies
  • Service Level Indicators

When it opens, the default Step is the existing User Journeys list (if any).

Existing User Journey List

How to access the SLOs

If you want to examine the contents of an existing User Journey to use as an example for creating your new SLO, there are two ways to do this:

  1. Click on the down arrow to the left of the User Journey name, which opens a "Quick View" of the associated SLOs.
  2. Click on the User Journey name itself, which opens the User Journey window and displays a list of associated SLOs in a Card structure with more details such as:
    • Reliability SLO value
    • Service Level value
    • Error Budget Snapshot usage

Option 1: Drop-down Arrow

  1. Click on the down arrow to the LEFT of the User Journey name. A drop-down appears, providing a Quick View of the associated SLOs names.
User Journey associated SLOs
  1. Click on an associated SLO to open a new window containing the associated Error Budget Policies, SLIs (if any), as well as a User Journey Summary on the far right side of the window.
Existing User Journey List

Option 2: Click on the Title

  1. Click on the User Journey name itself, which opens the User Journey window and displays a list of associated SLOs in aCard structure with more details as mentioned above.

You will note within the Details window you have several icons identifying actions you can apply to the elements in the window. These are identified and the action defined in the following table.

IconTypeAction
“...”Drop-downEdit SLO
Refresh Error Budget
Delete SLO
“+”ActionAdd SLO / SLI
PencilActionEdit the associated field
“X”ActionClose Details Window

If you wish to modify an existing User Journey, SLI, Error Budget, or SLO you can refer to the A Guide to Managing Blameless SLOs

Editing an Existing SLO

An existing SLO contains the following:

  • Existing User Journey
  • Existing SLI (at least one and may also have associations)
  • Existing Error Budget Policy (optional)
  • Thresholds set
note

The best practice for User Journey analysis is collaboration across teams and groups to collect the journey information.

Editing an User Journey

The user journey is composed of Services, SLIs, and SLOs which allow the user to examine the state of their profile conformance. If you want to edit the contents of an existing User Journey, there are two ways to do this:

Click on the down arrow to the left of the User Journey name, which opens a "Quick View" of the associated SLOs. Click on the User Journey name itself, which opens the User Journey window and displays a list of associated SLOs in a Card structure with more details such as:

  • Reliability Target value
  • Service Level value
  • Error Budget Snapshot usage

Modify an existing SLO by clicking on the Card. Add an SLO by clicking on the "+Add SLO" buttons (there are two, both execute the same creation process). Change the User Journey Summary value fields that have a pencil icon next to them (i.e., “Description” and “Team”

note

You must create a service or services and at least one SLI prior to creating the SLO. Also, while you can have multiple SLOs per User Journey, there is only one SLI per SLO.

note

You will notice another button to the left of the “+Add SLO” button. This allows you to change how the SLO displays.

IconDescription
Bullet listSLO Table view
Stacked cubesSLO Card view
New Services window

Editing an SLI

note

You CANNOT edit an SLI if it is associated with an SLO.

  1. If the SLI is not associated: Select the Service Level Indicator option on the left side of the SLO Landing window. Blameless shifts to the SLI Landing page, displaying a list of available SLIs (if any).
SLI Option from List
  1. Click on the desired SLI. A new window opens.
SLI List
note

This will include any existing SLIs, Notes (regarding the service), and a Summary of the Service metadata (Name, Description, Creation and Modification dates).

The SLI status is reported depending on the status. For example:

SLI StatusIcon typeTool tip
In ProgressSpinning wheelThis SLI is currently fetching the latest data from your APM.
Backfill completedGreen circle checkmarkSuccessfully fetched latest data from your APM.
ErrorRed circle exclamation point“Error while fetching…”.
No incoming dataTBDFuture Feature

Examples regarding these status icons appears in the following:

Existing SLO components
note

The Error message will be similar to the sample image, based on the type of error and explanation available.

note

The SLI status is currently reported in two different areas:

  • SLI cards under Service Level Indicators > Service
  • In the Detailed view of each SLI.
Services Details
note

Pingdom is a special integration, we can't measure internal metrics of services (which we can measure with Prometheus/Datadog/etc), we can work only with high level entities: page load time (SLI type "Latency") and status code of the page (SLI type "Availability").

note

Prometheus currently tracks a block of data based on the oldest available data received.

Editing an SLO

  1. Complete the required (*) fields: a. SLO Name. Apply a unique, but recognizable name. b. Reliability Target. Set a reliability target (percentage of requests meeting your SLI). The corresponding total error budget in terms of time is automatically calculated and displayed as you change the reliability target (entered value must be strictly less than 100% and strictly higher than 0%). c. Set the SLI type. i. If the selected SLI type is “Latency”: ii. Set the objective value latency iii. Select the unit for this value iv. Select the comparison operator d. SLO Status
    • Development Under construction so nothing affected (i.e., Error Budget).
    • Testing Debugging the SLO; however, Error Budget will be affected.
    • Active SLO is live; treat it as Production, including affecting the Error Budget.

Once the Required fields are complete, the “Save” and “Finish” buttons go active.

  1. Select an Error Budget Policy (optional).

  2. Select either “Save” and continue to edit your SLO settings or “Finish” to save and close the SLO wizard.

    The new SLO loads the User Journeys page, containing the following:

    • User Journey Summary
      • Title
      • Description
      • Create date / time
      • Updated
      • Team
    • Reliabilty Target (prescribed value)
    • Service Level (prescribed value)
    • Associated SLI (Active name)
    • Mousing over the anime displays a Details pop-up:
      • SLI Type
      • Datasource
      • Metric value (determined by the data source and type of SLI chosen)
      • Metric value (determined by the data source and type of SLI chosen)
    • Error Budget Policy (unless not selected--in which case the name is blank)
note

You will note that without an EBP, the charts are flat at the prescribed values you supplied.

For More Information

For instructions regarding the creation, configuration, and use of User Journeys, Error Budgets, SLOs, and SLIs, refer to the following SLO references:

Blameless SLO Definitions

An Introductory Guide to Blameless SLOs

A Guide to Getting started with Blameless SLOs (this document)

A Guide to Building a New SLO

A Guide to Error Budget Policies

A Guide to Managing Blameless SLOs

A Guide to Understanding your SLOs

Refer to the Google SRE Handbook for more information regarding Site Reliability Engineering.