From: Anssi Mannila Date: Thu, 24 Sep 2020 11:02:57 +0000 (+0300) Subject: LN0739_FM_FR5: support functionality to escalate alarm by changing severity X-Git-Tag: alarm/v0.5.0~31 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=fe07bd1ea2f550225a209f1393fbaf14fe0a46a2;p=ric-plt%2Falarm-go.git LN0739_FM_FR5: support functionality to escalate alarm by changing severity Signed-off-by: Anssi Mannila Change-Id: Ie7ceef74390e1dccdced0bfb25c75435a14c3833 --- diff --git a/manager/cmd/manager.go b/manager/cmd/manager.go index 9a42187..fb30ba7 100755 --- a/manager/cmd/manager.go +++ b/manager/cmd/manager.go @@ -82,11 +82,18 @@ func (a *AlarmManager) ProcessAlarm(m *alarm.AlarmMessage) (*alert.PostAlertsOK, // Suppress duplicate alarms idx, found := a.IsMatchFound(m.Alarm) - if found && m.AlarmAction != alarm.AlarmActionClear { + if found && m.AlarmAction == alarm.AlarmActionRaise { app.Logger.Info("Duplicate alarm found, suppressing ...") - return nil, nil + if m.PerceivedSeverity == a.activeAlarms[idx].PerceivedSeverity { + // Duplicate with same severity found + return nil, nil + } else { + // Remove duplicate with different severity + a.activeAlarms = a.RemoveAlarm(a.activeAlarms, idx, "active") + } } + // Clear alarm if found from active alarm list if m.AlarmAction == alarm.AlarmActionClear { if found {