Skip to content

H17. Setting SLA Targets and Getting Reports

Diátaxis: How-to · Audience: administrators -- the SLA Setting menu is visible only to accounts with administrator permission (the dashboard, status, and reports are available to every user) ← Back to contents

To see "is our service keeping the availability it promised", first decide what to keep and at what level (the service checks), then check the current state on the dashboard and the attainment over a period in the report. This document covers those three steps.

Reading E3.3 SLA and Availability first makes the concept easier to follow. The SLA in OPENMARU APM is based on service checks (confirming periodically that the service responds normally).

The SLA Monitoring menu (left menu ▸ SLA Monitoring)

MenuPathPurpose
SLA Dashboardleft menu ▸ SLA Monitoring ▸ SLA DashboardThe current SLA state at a glance (new)
SLA Statusleft menu ▸ SLA Monitoring ▸ SLA StatusThe service check results (the trend)
SLA Reportleft menu ▸ SLA Monitoring ▸ SLA ReportThe availability and attainment report
SLA Setting (administrators only)left menu ▸ SLA Monitoring ▸ SLA SettingRegistering service checks and setting targets

SLA Setting (Targets and Goals)

First register what to watch (the service checks) and the target level.

  1. Open left menu ▸ SLA Monitoring ▸ SLA Setting (visible to administrators only).
  2. Register the service checks to watch -- the targets whose normal operation is confirmed periodically, per service or endpoint.
  3. Set the target (availability and so on) -- 99.9% availability, for example.
  4. Save.
SLA Setting -- choosing 'Openmaru' in the service check list on the left shows its check rules (Openmaru home, CNF blog, MSAP.ai) on the right

The screen has two areas, left and right. In service check settings on the left, register the services to watch (Openmaru and egov, for example) and each check's interval (seconds), checking agent, and state. Choosing a service on the left brings up, in the check rules on the right, the items that service actually calls to confirm -- the screen above has Openmaru selected, with its 3 rules shown (Openmaru home, CNF blog, MSAP.ai, all GET).

Editing a check rule -- choose a rule on the right and press Edit to open the edit window. Below is the screen for editing the 'Openmaru home' rule.

Editing a check rule -- Basic (rule name, URL, HTTP GET, enabled), Request (charset, parameters, body, headers), Success/failure criteria (success status code 200), Advanced (response timeout 30 seconds), SLA targets (response time p95 1000 ms, success rate 99.9%)

One rule is the definition of "call this URL this way, and this response means normal".

  • Basic -- the rule name, the URL (https://www.openmaru.io, for example), the check method (HTTP GET and so on), and whether it is enabled.
  • Request -- the request charset (UTF-8) and, where needed, parameters, body, and headers.
  • Success/failure criteria -- the success status codes (200, for example) and failure status codes, plus the decision regular expressions that separate success from failure on the body content. The criteria set here decide whether one check is "normal or failed".
  • Advanced -- the response timeout (30 seconds, for example; beyond it is a failure), allowing redirects, continuing past errors, and the retry count.
  • SLA targets -- the baseline (SLO) at which this rule is recognized as having "kept" the SLA. Two things are set.
    • Response time p95 (ms) -- 1000, for example. It means 95% of calls have to respond within 1 second. The slowest 5% are allowed, but if the 95th percentile passes this value the target is missed.
    • Success rate (%) -- 99.9, for example. The cumulative success rate over the period has to be at or above this value (allowing one failure in a thousand).

Key point The success/failure criteria (03) and the SLA targets (05) are different layers.

  • The success/failure criteria decide "was this one check normal" (on the status code and the response time of a single call).
  • The SLA targets decide "did those results, accumulated over the period, keep the promise (p95 and success rate)". Even when each single check succeeds, the SLA can be missed if the p95 response time often passes the target.

Note An SLA is a cumulative view over a period. One slow moment does not break it, but short failures accumulating often bring the attainment down (E3.3). That is why setting the target to "a value that can realistically be kept" matters.


Checking the Current State on the SLA Dashboard

Whether the configured services are keeping their targets now is visible at a glance on the dashboard.

  1. Open left menu ▸ SLA Monitoring ▸ SLA Dashboard.
  2. Check the current availability and attainment state per service.
The SLA dashboard

For the trend in more detail (the check results over time), look at the SLA Status screen.

The SLA trend (SLA Status) -- the status cards (P50 and P95 response time, success rate), the per-service cards, and the timeline (response time / success rate)

The screen above shows one service's (Openmaru's, for example) status summary (P50 and P95 response time, success rate, errors), the per-service cards, and the timeline (the response time and success rate over time). The trend shows at which point a check became slow or failed.

To change the period and look at the past, see H2. Changing the Period.


Getting an SLA Report

Get the availability and attainment over the whole period, set out for reporting.

  1. Open left menu ▸ SLA Monitoring ▸ SLA Report.
  2. Choose the target service and the period.
  3. Check the availability and attainment report.
The SLA report -- the summary (SLA, outage count, MTTR, MTBF), the SLA chart (a day's response time and success rate), and the SLA event list

The example above is a daily report -- it consists of the summary (SLA attainment, outage count, outage duration, MTTR, MTBF), the SLA chart (that day's response time and success rate trend), and the SLA event list (the outage and pause intervals). It can be downloaded as a file with Download report.

The other periodic reports (daily, weekly, monthly) and the Excel download are set out in R5. Kinds of Report.


When It Does Not Work

SymptomWhat to check
The SLA Setting menu is not visibleCheck the account has administrator permission -- SLA Setting is visible only to administrators
The dashboard is emptyWhether the service checks have been registered in SLA Setting first
Availability is lower than expectedCheck the trend in SLA Status to see at which point a check failed
There is no data in the reportCheck the service checks were running during the chosen period