Zum Hauptinhalt springen

Regeln anlegen und pflegen

Eine Regel ist ein Objekt, das alles zusammenhält: die Bedingung, den Zeitplan, den Zeitbereich, die Entprellung, die Texte und die Angabe, welche Objekte sie überwacht. Es gibt bewusst keine zweite Ebene, in der eine Regel je Anlage noch einmal parametrisiert würde — die Abweichung je Objekt kommt aus den dynamischen Eigenschaften, die Wiederverwendung aus Vorlagen.

Sie finden die Regeln über den Menüpunkt Alarmregeln.


Die Regelliste

Die Liste zeigt je Regel Name, Ausführungsrhythmus, Zeitbereich, den Zustand (aktiv/inaktiv als Schalter) und drei Aktionen: Bearbeiten, Vorschau auf Historie und Löschen. Hat eine Regel offene Alarme, steht ihre Anzahl neben dem Zustand.

  • Der Schalter wirkt sofort und fragt vorher nach: Deaktivieren beendet die offenen Alarme der Regel. Das ist notwendig, weil nur ein Lauf der Regel einen Alarm klären kann — eine abgeschaltete Regel läuft nicht, ihre Alarme könnten also nie enden.
  • Löschen entfernt die Regel und beendet ihre offenen Alarme ebenso. Die Alarme selbst bleiben bestehen und bearbeitbar, sie verlieren nur den Verweis auf die Regel.
  • Ein beendeter Alarm lebt nicht wieder auf. Wird die Regel erneut aktiviert und die Bedingung ist weiterhin erfüllt, entsteht beim nächsten Lauf ein neuer Alarm — mit neuem Text und neu laufender Einschaltverzögerung.
  • Der Bearbeitungsstatus der Alarme bleibt dabei unverändert: Deaktivieren ist keine Bearbeitung.
Woran man es später erkennt

Ein so beendeter Alarm trägt im Detailbereich die Zeile „Beendet durch" — etwa Regel deaktiviert oder Regel gelöscht. Ohne diese Zeile ist er auf dem gewöhnlichen Weg zu Ende gegangen: Die Bedingung ist zurückgefallen. Siehe Alarme.


Das Formular

Oben stehen die Felder, die immer sichtbar sind; darunter vier ausklappbare Bereiche.

Kopf

FeldBedeutung
NamePflichtfeld. Er erscheint als Alarmtitel, wenn kein Alarmtext hinterlegt ist
BeschreibungFreitext für Kollegen: worum es geht und warum die Regel so eingestellt ist
Ausführungsrhythmus (cron)Pflichtfeld, Quartz-Cron-Ausdruck, etwa 0 */5 * ? * * für „alle 5 Minuten"
Von / Bis / ZeitzonePflichtfelder: das Fenster, das jeder Lauf betrachtet, etwa now-15m bis now
AktivOb die Regel läuft

Zu Rhythmus und Fenster gehört eine Regel, die man kennen muss, bevor man Werte einträgt: das Fenster muss mindestens den Abstand zweier Ausführungen abdecken. Details und die vollständige Syntax für Von/Bis stehen unter Zeitplan, Fenster und Entprellung.

Kritikalitätsstufen

Dieser Bereich ist die Bedingung der Regel, nicht eine Ergänzung dazu. Jede Stufe besteht aus einer Kritikalität (Niedrig, Mittel, Hoch, Kritisch) und einem Ausdruck.

Die Stufen werden von der höchsten abwärts geprüft, die erste zutreffende gewinnt und liefert die Kritikalität des Alarms. Eine Regel mit nur einer Stufe — der Normalfall — ist diese Liste mit einem Eintrag.

Kritisch: values.size() > 0 && values.max() > props.level_max_critical
Hoch: values.size() > 0 && values.max() > props.level_max

Trifft keine Stufe, ist die Bedingung nicht erfüllt. Trifft die kritische Stufe, wird die hohe nicht mehr geprüft — Stufen müssen sich also nicht gegenseitig ausschließen.

Im selben Bereich liegen drei weitere Felder:

FeldBedeutung
RückfallbedingungEin eigener Ausdruck für das Klären. Leer bedeutet: die Verneinung der Bedingung. Damit lässt sich echte Hysterese bauen — siehe Entprellung
Ausschlaggebender WertEin Ausdruck, dessen Ergebnis am Alarm angezeigt und in den Textplatzhaltern verwendet wird, etwa values.max(). Bleibt er leer, zeigt der Alarm keinen Wert
ParameterKonstanten der Regel als JSON-Objekt, im Ausdruck als params.x erreichbar — für Werte, die zur Regel gehören und nicht zum Objekt

Ausdrücke werden in einem kleinen Code-Editor bearbeitet. Die vollständige Liste der verfügbaren Variablen und Funktionen steht unter Ausdrücke.

Objekte

Teilbäume, Eigenschaftsbedingungen, von Hand hinzugefügte Objekte und eine Ausnahmeliste. Dieser Bereich hat ein eigenes Kapitel: Welche Objekte überwacht werden.

Entprellung

Anhebeverzögerung, Abfallverzögerung, Kontinuitätstoleranz und Benachrichtigungspause, alle als ISO-8601-Dauer (PT5M, PT2H, PT30S). Beschrieben unter Zeitplan, Fenster und Entprellung.

Die Benachrichtigungspause wird gespeichert und geprüft, hat aber in dieser Fassung keine Wirkung: es gibt noch keine Meldeschicht. Das Formular weist darauf hin.

Texte

Zwei Felder mit Platzhaltern in doppelten geschweiften Klammern:

FeldZweck
AlarmtextDer Titel des Alarms, z. B. Pegel {{ signal.name }} liegt bei {{ values.max() }} cm
HandlungsempfehlungWas zu tun ist, z. B. Zulauf prüfen, bei weiter steigendem Pegel Abschlag öffnen.

Zwischen den Klammern steht ein gewöhnlicher Ausdruck, ausgewertet im selben Kontext wie die Bedingung: alles, was die Bedingung lesen kann, kann auch der Text nennen. Es gibt keine zweite Sprache für Texte.

Beide werden einmal beim Auslösen aufgelöst und mit dem Alarm gespeichert. Ein gespeicherter Alarm zeigt immer den Text von damals. Lässt sich ein Platzhalter nicht auswerten, bleibt er im Text stehen, statt den Alarm zu verhindern — ein Alarm, der wegen eines Tippfehlers in seiner Beschreibung verschluckt wird, wäre das deutlich schlechtere Ergebnis.


Prüfen vor dem Speichern

Der Knopf Prüfen schickt die Regel zur Auswertung, ohne sie zu speichern, und beantwortet drei Fragen:

  1. Ist die Regel verwendbar? Übersetzt jeder Ausdruck, und liefert er einen Wahrheitswert? Ein Ausdruck, der eine Zahl ergibt, kann nicht gespeichert werden.
  2. Welche Objekte überwacht sie? Die Trefferliste — die einzige Möglichkeit, vor dem Speichern zu sehen, wie weit eine Regel reicht.
  3. Welche Objekte fallen heraus? Die Ausschlüsse mit Grund: Eigenschaft fehlt oder Keine Messreihe.

Dazu kommen Hinweise, etwa wenn das Fenster kleiner ist als der Abstand zweier Ausführungen. Hinweise verhindern das Speichern nicht — die Einstellung ist erlaubt, sie ist nur fast nie gemeint.

Nutzen Sie diesen Knopf, auch wenn die Regel „offensichtlich" richtig ist. Ein Selektor ohne Einschränkung trifft jedes Signal des Mandanten, und das steht nirgends sonst.


Vorschau auf Historie

Über das Vorschau-Symbol in der Regelliste spielen Sie die Regel über einen vergangenen Zeitraum nach. Sie geben Von, Bis und die Zeitzone an und erhalten:

  • die Anzahl der wiederholten Läufe und der Läufe ohne Ergebnis,
  • die Alarme, die entstanden wären, mit Auslöse- und Klärzeitpunkt („noch offen", wenn sie am Ende des Zeitraums noch standen),
  • eine Zeitleiste der offenen Alarme über den Zeitraum.

Die Vorschau entprellt genauso wie der laufende Betrieb — das ist der ganze Zweck. Grenzwerte und Verzögerungen lassen sich anders nicht sinnvoll wählen; die Wirkung einer Abfallverzögerung errät niemand richtig.

Auslegungswerkzeug, kein Nachweis

Gerechnet wird mit den heute gültigen Eigenschaften. Eigenschaften werden nicht historisiert: ein seit dem Zeitraum geänderter Grenzwert oder ein im Baum verschobenes Objekt führt zu einem anderen Ergebnis als die damalige Auswertung. Für die Auslegung von Parametern reicht das; als Beleg gegenüber Dritten nicht.

Die Vorschau schreibt nichts: sie erzeugt keine Alarme und verändert den laufenden Betrieb nicht.


Regelvorlagen

Über Vorlagen in der Regelliste öffnen Sie die Liste der Regelvorlagen. Aus einer Vorlage erzeugen Sie mit einem Namen eine neue Regel.

Eine Vorlage ist eine Kopiervorlage, kein Bezug:

  • Die neue Regel startet ohne Objekte und inaktiv. Sie müssen also bewusst entscheiden, was sie überwacht, und sie einschalten.
  • Eine spätere Änderung an der Vorlage erreicht die daraus entstandenen Regeln nicht.
  • Eine gelöschte Vorlage lässt die daraus entstandenen Regeln unberührt.

Das ist dasselbe Prinzip wie beim Asset-Typ, der dynamische Eigenschaften an ein Asset kopiert.

Vorlagen anlegen

In der Oberfläche können Sie Vorlagen nur verwenden und löschen. Neue Vorlagen entstehen derzeit nur über die REST-API.


Was beim Bearbeiten einer laufenden Regel passiert

Änderungen greifen ab dem nächsten Lauf. Zwei Fälle unterscheiden sich:

  • Geänderte Verzögerungen wirken einfach ab dem nächsten Lauf; ein angelaufener Fortschritt bleibt erhalten.
  • Eine geänderte Bedingung oder Rückfallbedingung verwirft den Fortschritt der Entprellung. Weiter auf eine Verzögerung hinzuzählen, die zu einer Bedingung gehört, die es nicht mehr gibt, wäre ohne Bedeutung.

Offene Alarme bleiben in beiden Fällen unberührt — mit dem Text und dem Regelabzug von ihrer Auslösung.