/  PyMDB  /  Alarms

Alarms

AlarmLevel

class yamcs.pymdb.AlarmLevel

Bases: Enum

Alarm levels with increasing concern.

NORMAL = 1

Used to indicate there is no concern.

WATCH = 2

Least concern. Considered to be below the more commonly used WARNING level.

WARNING = 3

Concern that represents the most commonly used minimum concern level for many software applications.

DISTRESS = 4

An alarm level of concern in-between the more commonly used WARNING and CRITICAL levels.

CRITICAL = 5

An alarm level of concern that represents the most commonly used maximum concern level for many software applications.

SEVERE = 6

An alarm level of highest concern. Considered to be above the most commonly used Critical level.

Alarm

class yamcs.pymdb.Alarm

Bases: object

Base class for an alarm definition

__init__(minimum_violations: int = 1)

EnumerationAlarm

class yamcs.pymdb.EnumerationAlarm

Bases: Alarm

Alarm definition for an EnumeratedParameter

__init__(states: Mapping[str, AlarmLevel], *, default_level: AlarmLevel = AlarmLevel.NORMAL, minimum_violations: int = 1)
default_level: AlarmLevel

Default alarm level (when the parameter value is not contained in states)

states: dict[str, AlarmLevel]

Alarm levels, keyed by enumeration label

ThresholdAlarm

class yamcs.pymdb.ThresholdAlarm

Bases: Alarm

Alarm definition specifying the thresholds for detecting out of limit values.

The threshold have increasing severity levels: watch, warning, distress, critical and severe.

Warning and critical are the most commonly used levels.

__init__(*, watch_low: Optional[float] = None, watch_low_exclusive: bool = False, warning_low: Optional[float] = None, warning_low_exclusive: bool = False, distress_low: Optional[float] = None, distress_low_exclusive: bool = False, critical_low: Optional[float] = None, critical_low_exclusive: bool = False, severe_low: Optional[float] = None, severe_low_exclusive: bool = False, severe_high: Optional[float] = None, severe_high_exclusive: bool = False, critical_high: Optional[float] = None, critical_high_exclusive: bool = False, distress_high: Optional[float] = None, distress_high_exclusive: bool = False, warning_high: Optional[float] = None, warning_high_exclusive: bool = False, watch_high: Optional[float] = None, watch_high_exclusive: bool = False, minimum_violations: int = 1)