- metric_value = self._get_metric_value(alarm.metric, tags)
- if metric_value is None:
- log.warning("No metric result for alarm %s", alarm.id)
- self.queue.put((alarm, AlarmStatus.INSUFFICIENT))
- else:
- if alarm.operation.upper() == 'GT':
- if metric_value > alarm.threshold:
+ metric_value = self._get_metric_value(alarm.metric, alarm.tags)
+ if alarm.alarm_status.upper() != AlarmStatus.DISABLED.value.upper():
+ if metric_value is None:
+ log.warning("No metric result for alarm %s", alarm.uuid)
+ self.queue.put((alarm, AlarmStatus.INSUFFICIENT))
+ else:
+ if (
+ (alarm.operation.upper() == "GT" and metric_value > alarm.threshold)
+ or (
+ alarm.operation.upper() == "LT"
+ and metric_value < alarm.threshold
+ )
+ or (
+ alarm.operation.upper() == "GE"
+ and metric_value >= alarm.threshold
+ )
+ or (
+ alarm.operation.upper() == "LE"
+ and metric_value <= alarm.threshold
+ )
+ or (
+ alarm.operation.upper() == "EQ"
+ and metric_value == alarm.threshold
+ )
+ or (
+ alarm.operation.upper() == "NE"
+ and metric_value != alarm.threshold
+ )
+ ):