diff --git a/internal/alertmanager/models.go b/internal/alertmanager/models.go index 2f8aebb37..58d5a2a62 100644 --- a/internal/alertmanager/models.go +++ b/internal/alertmanager/models.go @@ -298,7 +298,10 @@ func (am *Alertmanager) pullAlerts(version string) error { si := silences[alert.SilencedBy[i]] sj := silences[alert.SilencedBy[j]] if si != nil && sj != nil { - return si.EndsAt.Unix() < sj.EndsAt.Unix() + if alert.State == models.AlertStateSuppressed { + return si.EndsAt.Unix() < sj.EndsAt.Unix() + } + return si.EndsAt.Unix() > sj.EndsAt.Unix() } return alert.SilencedBy[i] < alert.SilencedBy[j] })