LN0739_FM_FR5: support functionality to escalate alarm by changing severity 69/4769/1
authorAnssi Mannila <anssi.mannila@nokia.com>
Thu, 24 Sep 2020 11:02:57 +0000 (14:02 +0300)
committerAnssi Mannila <anssi.mannila@nokia.com>
Thu, 24 Sep 2020 11:03:46 +0000 (14:03 +0300)
Signed-off-by: Anssi Mannila <anssi.mannila@nokia.com>
Change-Id: Ie7ceef74390e1dccdced0bfb25c75435a14c3833

manager/cmd/manager.go

index 9a42187..fb30ba7 100755 (executable)
@@ -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 {