Repeat Interval
The repeat interval determines the duration between subsequent related notifications after an initial successful delivery.
deployment-failed.yamlapiVersion: mission-control.flanksource.com/v1
kind: Notification
metadata:
name: config-updates
namespace: default
spec:
events:
- config.unhealthy
filter: config.type == "Kubernetes::Deployment"
to:
email: alerts@acme.com
repeatInterval: 2h
groupBy:
- type
groupByInterval: 12h
With the above notification in place, if a Kubernetes Deployment's health fluctuates between healthy
and unhealthy
multiple times within a 2-hour window, the system only sends one notification in that period.
Repeat groups
Repeat interval works in tandem with notification grouping. If multiple notifications fall in the same group, only one notification will be sent for the group within the repeat interval.
Example:
Deployment A becomes unhealthy due to a missing storage class, triggering a notification. Soon after, Deployment B also turns unhealthy for the same reason. Since it’s grouped with A, no additional notification is sent during the repeat interval. After the 2-hour interval passes, if Deployment C also becomes unhealthy for the same issue, a new notification is sent for C but A & B will also be included in the notification.
Time | Deployment | Status | Action Taken |
---|---|---|---|
10:00 | A | Unhealthy | Notification sent (first in group) |
10:15 | B | Unhealthy | Supressed due to repeat interval (grouped with A for 12h) |
12:10 | C | Unhealthy | Notification sent (repeat interval expired) Includes A, B, and C in the message (group is still active since groupByInterval is 12h) |