Requirements
A group monitor must have:- at least 2 member monitors
- member monitors that are active and not themselves group monitors
- weights that sum to exactly
1(tolerance ±0.01) executionDelay≥1000ms
Status scoring model
Member statuses are converted to a numeric score:| Status | Score |
|---|---|
UP | 1 |
DEGRADED | 0.5 |
DOWN | 0 |
MAINTENANCE | 1 (treated as UP) |
| Score | Group status |
|---|---|
= 1 | UP — all members healthy |
> 0 and < 1 | DEGRADED — partial failure |
= 0 | DOWN — all members down |
Scoring example
5 monitors with equal weight (0.2 each), 1 is DOWN:
Configuration fields
| Field | Type | Default | Notes |
|---|---|---|---|
monitors | Array<{ tag: string; weight: number }> | [] | Required, min 2 members; weights must sum to 1 |
executionDelay | number | 1000 | Milliseconds to wait before aggregating; must be ≥ 1000 |
latencyCalculation | AVG | MAX | MIN | AVG | How to compute group latency from member latencies |
Latency aggregation modes
| Mode | Result |
|---|---|
AVG | Average latency across all members |
MAX | Latency of the slowest member |
MIN | Latency of the fastest member |
Execution delay
TheexecutionDelay gives member monitors time to finish their own checks before the group reads their cached status. If member monitors have long-running checks (slow API endpoints, SQL queries with high latency), increase the delay so the group always reads fresh results.
Creating a group in the dashboard
Create member monitors first
All monitors you want to add to a group must already exist and be active. Groups cannot include other groups.
Add members and set weights
Add each member monitor and assign a weight. Weights must sum to
1. Equal weights for N monitors = 1/N each.Set execution delay and latency mode
Leave
executionDelay at 1000 ms unless member checks take longer to complete. Choose AVG, MAX, or MIN for latency display.Example configuration
When a member is deleted
If a member monitor is deleted from Kener, it is automatically removed from any groups that reference it. Weights are rebalanced equally across remaining members. Groups left with fewer than 2 members are automatically set to INACTIVE.Troubleshooting
- Cannot save: verify weights sum to
1, there are at least 2 members, and delay is ≥1000 - Status seems stale (cron runs): increase
executionDelayto give members more time to finish before the group aggregates - Group too sensitive or too lenient: adjust weights — higher weight on a critical monitor means its failure pulls the overall score down more