Core Concepts
Group Monitor
Combine multiple monitors into a weighted aggregate status
Group monitors aggregate member monitor status and latency into one monitor.
Minimum setup
Requirements from current validation:
- at least 2 member monitors
- members must be active, non-group monitors
- weights must sum to approximately
1(tolerance0.01) executionDelaymust be>= 1000mslatencyCalculationinAVG | MAX | MIN
Status scoring model
Member statuses are scored as:
UP = 0DEGRADED = 1DOWN = 2MAINTENANCE = 3
Weighted score:
Σ(member.weight * statusScore)
Mapped group status:
< 1→ UP>= 1and< 2→ DEGRADED>= 2and< 3→ DOWN>= 3→ MAINTENANCE
Latency aggregation
Group latency uses selected mode:
AVG: average member latencyMAX: slowest member latencyMIN: fastest member latency
Configuration fields
| Field | Type | Default | Notes |
|---|---|---|---|
monitors |
Array<{tag, weight}> |
[] |
Required, min 2 |
executionDelay |
number |
1000 |
Must be >= 1000 |
latencyCalculation |
AVG|MAX|MIN |
AVG |
Example
{
"type": "GROUP",
"type_data": {
"monitors": [
{ "tag": "api", "weight": 0.6 },
{ "tag": "db", "weight": 0.3 },
{ "tag": "cache", "weight": 0.1 }
],
"executionDelay": 1500,
"latencyCalculation": "AVG"
}
}
Troubleshooting
- Cannot save: verify weights sum to
1, min member count, and delay >=1000 - Unexpected stale status: increase
executionDelayso member checks finish first - Group too optimistic/pessimistic: rebalance weights toward critical components