Skip to main content

Data anomaly detection

Reading time: 0 minute(s) (0 words)

Data anomalies highlight unusual patterns that may affect how you interpret your SLO. Some indicate missing or inconsistent data; others reflect intentional changes in how you collect it. An anomaly doesn't necessarily mean your service is unhealthy or your error budget is wrong.

Nobl9 offers two ways to detect data anomalies:

  • Manually configured detection of no data. It is available for everyoneβ€”you set up notifications for your SLO. These notifications trigger when this SLO stops reporting data for a duration you set.
  • Automatic data anomaly detection. This is an advanced feature for the Nobl9 Enterprise Edition. It detects several data anomaly types automatically using centralized defaults that can be customized on demand. See support by SLO type.

Once a data anomaly is detected, Nobl9 updates the tile on this SLO details page and creates an SLO annotation with details about the data anomaly and a link to the affected SLO.

Manual configuration and auto-detection both operate fully and seamlessly alongside each other.

This overview explains how data anomaly detection is configured and links to a dedicated page with examples and troubleshooting steps for each anomaly type.

No data manual configuration​

With manually configured No data anomaly detection, you're setting up notifications for no data. The notifications are sent using one of the supported alert methods. Ensure you have access to at least one of the following:

For ServiceNow, Nobl9 can also send a closing event when the no-data anomaly resolves. Enable Alert resolution on the ServiceNow alert method to receive these events. For event fields and YAML settings, see ServiceNow no-data anomaly notifications.

You can set up data anomaly detection:

Manual no-data alerts only

The settings in this section apply only to manually configured No data anomaly alert notifications for a specific SLO. They do not change Nobl9's automatic data anomaly detection in SLO oversight. In particular, automatic No data anomaly detection continues to use its own centralized rules and defaults.

To configure data anomaly detection in the Nobl9 Web application, select No data anomaly alert in Step 5 of the SLO wizard. Then, specify how long your SLO must wait for data before sending the notification, select your preferred alert method, and, if needed, enable Treat zero as no data.

When this option is enabled, zero-valued points are treated as no data for this manual no-data alerting flow. Leaving it unchecked preserves the default behavior.

no data alert
Setting up no data notification on the Nobl9 Web
  • You can add up to five alert methods for your manual no data anomaly notifications per SLO
  • To receive notifications for no data anomalies, you must have access to both the SLO and the alert method it uses
  • Query parameters, like query delay, can affect when Nobl9 sends notifications for missing data and the duration of the corresponding annotations. This creates a difference in timestamps: SLO charts use the time from the data source, while notifications and annotations are based on when Nobl9's query confirms the anomaly.
annotations closure after a data point is received
Anomaly annotation is closed after a data stream resumes
example for the query delay = 5 minutes and alert after = 10 minutes
Data pointTime in a data sourceTime in Nobl9No data anomaly detection time
Last data point before no data period13:00:0013:05:0013:15:00
First data point after no data period14:00:0014:05:0014:15:00
Refer to troubleshooting steps to address no data anomalies

Data anomaly auto-detection
Enterprise
​

Automatic data anomaly detection is available exclusively in the Nobl9 Enterprise Edition

The following data anomaly types are detected:

Data anomalyDescriptionDefault waiting timeDefault cooldown
No dataNo data is being reported by an SLO objective for one week1 weekNo cooldown
Constant burnAn SLO objective is constantly burning its error budget for an unusually long time1 week30 minutes
No burnAn SLO objective is not burning its error budget for an unusually long time8 weeksNo cooldown
Incremental mismatchA ratio SLO, configured with the incremental data count method, has received a non-incremental data pointTriggered immediately1 day
Good over totalThe good event count for a ratio SLO exceeds its total event count for the same calculated intervalTriggered immediately30 minutes
Sampling rate mismatchThe two streams of a count-metric ratio SLO report points at substantially different ratesWarmup and confirmationNo fixed cooldown; recovery confirmation applies
Sampling rate changeAn SLI stream reports points at a substantially different rate from its learned baselineWarmup and confirmationNo fixed cooldown; recovery confirmation applies

Contact Nobl9 Support to adjust these settings for your organization.

Support by SLO type​

Automatic data anomaly detection applies to standard SLOs, not composite SLOs. For a composite, inspect the standard SLOs that make up its components. An anomaly on a component does not create the same anomaly on its parent composite.

Automatic anomalyEligible standard SLOsComposite SLOs
No dataThreshold and ratio SLOsNot supported
Constant burnThreshold and ratio SLOsNot supported
No burnThreshold and ratio SLOsNot supported
Incremental mismatchRatio SLOs with incremental count metricsNot supported
Good over totalRatio SLOs with good and total count metricsNot supported
Sampling rate mismatchRatio SLOs with good and total or bad and total count metricsNot supported
Sampling rate changeThreshold SLOs with raw metrics and ratio SLOs with count metricsNot supported

This table covers automatic anomaly detection. Manually configured No data notifications are a separate feature.

No data​

Automatic No data detection finds objectives that stop reporting points for an extended period. Its default observation period is one week.

Read how the No data anomaly works, including a timeline and troubleshooting steps.

Constant and no burn​

Constant burn and No burn examine opposite long-running error budget patterns:

  • Constant burn means the objective continuously consumes error budget.
  • No burn means the objective does not consume error budget for an unusually long time.
Interpreting data anomalies

While we do our best to help you identify misconfigurations, the range of potential causes is too extensive to guarantee that all data anomalies are solely due to misconfigurations.

That is why a Constant burn data anomaly may be triggered by an actual incident on your system side, instead of a misconfiguration.

Similarly, for No burn, most cases should point to misconfigurations; however, some data anomalies may be produced for a normal, healthy SLO that simply has not burned its error budget.

Treat data anomalies as hints rather than definitive signals that demand an immediate response.

Incremental mismatch​

Incremental mismatch detects a non-zero decrease in a count metric configured as incremental. A point at zero is treated as an explicit counter reset.

Read how the Incremental mismatch anomaly works, including reset behavior and examples.

Good over total​

Good over total checks whether good events exceed total events in an interval. Incremental SLOs with good and total count metrics allow a recent total lead to explain delayed good events within a one-minute catch-up window by default. Non-incremental SLOs with good and total count metrics report the anomaly immediately. Objectives configured with bad and total count metrics are not evaluated for this anomaly.

Read how the Good over total anomaly works, including catch-up examples and the effect on reliability.

Sampling rate mismatch​

Sampling rate mismatch compares how frequently the two streams of a count-metric ratio objective report samples. It uses the spacing between sample timestamps, not the event counts stored in those points. For example, good can report four samples per minute while total reports only one.

Read how the Sampling rate mismatch anomaly works, including comparison charts, warmup, and recovery.

Sampling rate change​

Sampling rate change compares each SLI stream's recent sampling rate with its learned baseline. A change from four samples per minute to one can trigger it even though data continues to arrive. The anomaly can resolve at the new rate as the baseline adapts.

Read how the Sampling rate change anomaly works, including point-spacing charts, rate changes, and baseline adaptation.

Data anomalies vs. alerts​

While both data anomalies and alerts can create annotations on an SLO objective, they are distinct concepts with different purposes and configurations. The following table summarizes their key differences.

ParameterData anomalyAlert
DefinitionAn automatically detected deviation from expected data patterns, common to all SLOsA user-defined notification triggered when specific, configured conditions are met
FocusThe integrity of incoming dataSLO's error budget or error budget burn rate
TriggerBuilt-in system logic that analyses data patternsA specific, user-configured alert policy
RulesSystem-defined and cannot be changed by the userCustomizable by the user
NotificationsDoesn't send notifications using alert methods
Except for manual No data anomalies
Sends notifications using configured alert methods
SilencingCannot be silencedCan be silenced based on user configuration
Manually configured "No data" detection rules

Manually configured No data detection rule follows the same logic as the auto-detection rule but must be enabled for an SLO explicitly and allow you to customize the waiting time and choose a specific alert method for notifications.

Check out these related guides and references: