⚙️ SLAs and Automated KPI Evaluation
GermainUX Service Level Agreements (SLAs) evaluate KPI data against defined expectations. They can monitor individual events, aggregated performance, changes from a baseline, predicted outcomes and abnormal behavior.
🎯 SLA Scope
SLAs can be applied to preconfigured or custom KPIs across:
|
Area |
|---|
|
Technology availability and performance |
|
User experience |
|
Business processes and workflows |
|
Adoption and productivity |
|
Marketing, conversion and retention |
|
Custom business metrics |
When an SLA condition is met, GermainUX can change the KPI's health status and trigger alerts, reports or automated actions.
📋 Choose the Appropriate SLA
|
SLA or capability |
What it evaluates |
Best used for |
|---|---|---|
|
Fact-Based SLA |
A single fact, event, metric or transaction |
Real-time evaluation of an individual data point |
|
Aggregate SLA |
A measure calculated across a defined time period |
Average, total, minimum, maximum or other period-level results |
|
Color Percentile SLA |
Percentage of data points within the GREEN range |
Confirming that an acceptable proportion of experiences meet expectations |
|
Percent Change SLA |
Difference between a current period and a baseline period |
Detecting regressions, improvements, spikes and drops |
|
Predictive SLA |
Forecast derived from historical behavior |
Warning that a threshold is likely to be breached in the future |
|
Smart Insights SLA |
Abnormal behavior relative to comparable business periods |
Detecting unusual patterns without relying only on fixed thresholds |
|
Multi-Metric Evaluation |
Several measures on the same fact |
Evaluating different aspects of one event, such as speed, failure and memory |
Aggregate, Color Percentile and Percent Change SLAs are statistical SLA types. Multi-Metric Evaluation is an SLA capability rather than a separate statistical model.
🔍 Fact-Based SLA
A Fact-Based SLA evaluates each individual data point against configured thresholds.
Examples include:
|
Example |
|---|
|
A server becomes unavailable. |
|
A user interaction exceeds five seconds. |
|
An application generates an error. |
|
Memory utilization exceeds 90%. |
|
A workflow step violates its expected duration. |
Use a Fact-Based SLA when each occurrence is important and should be evaluated immediately.
🔔 Stateful SLA Alerts
Stateful alerting is designed for ongoing conditions such as server, database or service availability. It provides a violation-and-recovery notification pattern similar to event-management systems.
When Stateful is enabled for a KPI, GermainUX remembers the last state of each monitored resource:
-
An alert is triggered when the resource enters a violating state.
-
No additional alert is sent while the same resource remains in that state.
-
A recovery notification is triggered when the resource returns to a compliant state.
This is appropriate for continuously collected measurements. It is usually not appropriate for independent events for which every occurrence should generate a separate action.
🔧 Stateful Configuration
|
Setting |
Location |
Purpose |
|---|---|---|
|
Stateful |
KPI configuration |
Enables state tracking and violation/recovery notifications for each resource. |
|
Activation Count |
SLA configuration |
Requires a configured number of consecutive violations before the violation action is triggered. |
Activation Count can be used with or without Stateful behavior. It reduces noise from isolated violations but does not produce recovery notifications by itself.
📊 Behavior Matrix
|
KPI Stateful |
Activation Count |
Behavior |
|---|---|---|
|
Off |
Unset or |
Every violation triggers the configured action immediately. No recovery notification is sent. |
|
Off |
|
The action triggers after |
|
On |
Unset or |
One action triggers when the resource enters violation. The KPI remains silent while the violation continues. A recovery action triggers on the first compliant reading. |
|
On |
|
The violation action triggers after |
The key distinction is:
-
Stateful creates the violation-and-recovery lifecycle.
-
Activation Count delays or de-noises the initial violation action.
✉️ Stateful Alert Template Fields
The alert template context includes fields that can be used to produce different violation and recovery messages.
|
Field |
Type |
Meaning |
|---|---|---|
|
|
Boolean |
|
|
|
Integer or null |
Number of consecutive violations recorded when the action triggered. It is available when state or activation tracking is enabled. |
Example body template for Server Availability:
<#if context.violation>
GermainUX was not able to reach the following server: ${context.fact.system.hostname!}
<#else>
GermainUX reconnected to the following server after ${context.violationCount} failed attempts: ${context.fact.system.hostname!}
</#if>
Example subject template:
Server ${context.fact.system.name!} is <#if context.violation>not available<#else>available</#if>
Use context.violation to select the appropriate message and context.violationCount when the notification should report the number of failed attempts.
The shared <#include "SLA-SUMMARY"> template can also display context.summaryMetrics.attempts when a generic summary is preferred.
📊 Statistical SLAs
Statistical SLAs evaluate a collection of facts over a defined period rather than judging each individual occurrence independently.
🧮 Aggregate SLA
An Aggregate SLA calculates a measure for a time period and compares the result with a fixed threshold.
Examples include:
|
Example |
|---|
|
Average response time over 15 minutes exceeds two seconds. |
|
Total errors during the last hour exceed 100. |
|
Maximum memory utilization during the day exceeds 90%. |
|
95th-percentile process duration exceeds its objective. |
Use an Aggregate SLA when the overall period result matters more than a single event.
💚 Color Percentile SLA
A Color Percentile SLA evaluates the proportion of facts classified as GREEN during a period and compares that proportion with a threshold.
For example:
At least 95% of User Clicks must remain within the GREEN performance range.
This model is useful when a limited number of degraded experiences is acceptable but the majority must meet the expected performance level.
🔁 Percent Change SLA
A Percent Change SLA compares a current period with a previous baseline period.
It can detect:
|
Detect |
|---|
|
An increase in errors |
|
A decline in conversion |
|
A reduction in process volume |
|
A performance regression |
|
A meaningful improvement after a change |
For example:
Alert when User Error volume increases by more than 30% compared with the previous equivalent period.
🔄 In Range Operator
The In Range operator can be used with a Percent Change SLA to determine whether the result remains within an acceptable positive or negative range.
For example, a range of -30% to +30% can be treated as normal, while a result outside that interval can be treated as a significant change.
🧾 Filter Percent Change Results
A large percentage change can be misleading when both the baseline and current volumes are very small. Statistical SLAs support a Threshold Expression that can use the underlying current and baseline values to suppress low-volume noise.
Available variables include:
|
Variable |
Meaning |
|---|---|
|
|
Absolute value calculated for the current period |
|
|
Absolute value calculated for the comparison period |
|
|
Absolute or percentage change between the baseline and current results, according to the SLA configuration |
|
|
Threshold configured on the SLA |
The following expression prevents an alert when both counts are below 20, even if the percentage change is large. It also treats values below the configured threshold as compliant:
(current < 20 && baseline < 20) || (value < threshold)
Threshold Expressions allow the SLA to consider both relative change and business volume.
🔮 Predictive SLA
A Predictive SLA uses historical data and trends to forecast a future value or outcome.
Examples include:
|
Example |
|---|
|
Disk utilization is predicted to exceed 90% within seven days. |
|
Visitor volume is predicted to be 40% higher by month-end. |
|
A process backlog is likely to exceed operational capacity. |
|
A performance threshold is likely to be breached before the next maintenance window. |
Predictive SLAs support proactive action before a threshold is actually violated.
💡 Smart Insights SLA
Smart Insights identifies abnormal trends and noteworthy deviations relative to comparable business periods.
Comparisons can reflect the operating context, such as:
|
Context |
|---|
|
Year-end |
|
Quarter-end |
|
Month-end |
|
Day of the week |
|
Time of day |
|
Other recurring business periods |
Examples include:
|
Example |
|---|
|
User Error volume is 22.7% higher this Monday than last Monday. |
|
Conversion is unusually low compared with equivalent weekday periods. |
|
A process is taking longer than during comparable month-end cycles. |
|
Application activity is unexpectedly high or low for the current period. |
Smart Insights can be enabled for active KPIs involving technology, processes, user behavior and business outcomes.
🔗 Evaluate Multiple Measures on One Fact
GermainUX can evaluate multiple measures from the same data point, each with its own threshold.
For example, a User Click can be evaluated for:
|
Measure |
Details / Media |
|---|---|
|
Failure status |
|
|
Interaction duration |
|
|
Memory footprint |
|
Another use case may evaluate both Active Duration and Inactive Duration to understand how employees spend time while completing an HR workflow.
Thresholds are evaluated in order. The worst resulting health color is applied to the fact. For example, if one threshold returns ORANGE and another returns RED, the final result is RED.
This makes it possible to represent the overall health of a data point without losing the individual conditions used to evaluate it.
🚨 Alert Examples
|
Alert |
SLA capability |
|---|---|
|
Disk usage is predicted to exceed 90% within one week. |
Predictive SLA |
|
User Error volume is 22.7% higher this Monday than last Monday. |
Smart Insights or Percent Change SLA |
|
Sales forecast is predicted to be 70% accurate by month-end. |
Predictive SLA |
|
eCommerce visitor volume is predicted to be 40% higher by month-end. |
Predictive SLA |
|
Server becomes unavailable and later reconnects. |
Stateful Fact-Based SLA |
|
Fewer than 95% of interactions remain GREEN. |
Color Percentile SLA |
📝 Configuration Recommendations
|
Recommendation |
|---|
|
Use Fact-Based SLAs for important individual events or measurements. |
|
Enable Stateful behavior only for conditions with a meaningful recovery state. |
|
Use Activation Count to suppress transient violations. |
|
Use statistical SLAs when aggregate or period behavior matters more than one fact. |
|
Compare equivalent business periods whenever activity follows predictable cycles. |
|
Add minimum-volume conditions to Percent Change SLAs. |
|
Use percentiles when averages may hide degraded experiences. |
|
Validate predictive and Smart Insight results against sufficient historical data. |
|
Test alert templates for both violation and recovery paths. |
|
Apply multiple measures when one fact can fail for several independent reasons. |
|
Connect SLA actions only to conditions that require an operational response. |
Service: Analytics
Feature Availability: 8.6.0 or later