Create Service-Level Objectives

With Service-Level Objectives SLOs, you can configure new service-level objectives (SLOs) from templates provided by Dynatrace. You can also define your SLOs based on a custom DQL query.

Create an SLO from template

To create a new SLO with a predefined template

  1. In Dynatrace, search for Service-Level Objectives SLOs.
  2. In the overview of Service-Level Objectives, select Service-level objective.
  3. In the SLO wizard, choose one of the following:
    • CPU utilization
    • Service availability
    • Service performance
  4. Select Create for one of the above options.
  5. Choose the entities that should meet your objective. If you're using the Service performance template, enter a value in milliseconds in Requests should be faster than.
  6. Select Next.
  7. Define the criteria of your SLO. Fill in the Target field and select the timeframe for the evaluation period by using the dropdown in the over the evaluation period field.
  8. optional Turn on Show warning and enter the percentage in Show warning at.
  9. Select Next.
  10. Enter a name for your SLO in SLO Name.
  11. optional Provide a meaningful description of what your SLO is about in SLO description.
  12. optional Provide tags for your SLO in the Tags section by filling in the Key and Value fields. Select Add to save the tags. Tags can be used to provide additional metadata to your SLOs, such as a responsible ownership team or additional information about the underlying entities or criticality of your SLO.
  13. Select Save to create your SLO.

Create a custom SLO

  1. In Dynatrace, search for Service-Level Objectives SLOs.
  2. In the overview of Service-Level Objectives, select Service-level objective.
  3. Select Custom SLO.
  4. Provide your DQL query. Your query has to include an "sli" field like in the following example, to ensure consistent visualization, transformation, and aggregation across your SLOs. The "sli" field needs to return an array of double type. The DQL query can be based on any data type in Grail, such as events or logs. Using the makeTimeseries provides the possibility to create an sli time series that can be used for calculating the SLO status.
timeseries { total=sum(dt.service.request.count) ,failures=sum(dt.service.request.failure_count) }
, by: { dt.entity.service }
, filter: { in (dt.entity.service, { services }) }
| fieldsAdd sli=(((total[]-failures[])/total[])*(100))
  1. Select Next.
  2. Define the criteria of your SLO. Fill in the Target field and select the timeframe for the evaluation period by using the dropdown in the over the evaluation period field.
  3. optional Turn on Show warning and enter the percentage in Show warning at.
  4. Select Next.
  5. Provide the name for your SLO in the SLO Name field.
  6. optional Provide a meaningful description of what your SLO is about in the SLO description field.
  7. optional Provide tags for your SLO in the Tags section by filling in the Key and Value fields. Select the Add button to save the tags. Tags can be used to provide additional metadata to your SLOs, such as a responsible ownership team or additional information about the underlaying entities or criticality of your SLO.
  8. Select the Save button to create your SLO.