Skip to main content

Repeat Interval

The repeat interval determines the duration between subsequent related notifications after an initial successful delivery.

deployment-failed.yaml
apiVersion: 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.

TimeDeploymentStatusAction Taken
10:00AUnhealthyNotification sent (first in group)
10:15BUnhealthySupressed due to repeat interval (grouped with A for 12h)
12:10CUnhealthyNotification sent (repeat interval expired) Includes A, B, and C in the message (group is still active since groupByInterval is 12h)