Neu: Die KI-Firewall überwacht jedes Modul und erklärt jeden Vorfall in einfachen Worten. So funktioniert es

Schutzmechanismen und fehlgeschlagene Nachrichten

Die Flow-Schutzmechanismen, die Schleifen und fehlschlagende Flows pausieren, der Notstopp, fehlgeschlagene Nachrichten und deren Wiederholung sowie die Automatisierungsalarme.

Flows laufen unbeaufsichtigt, daher schützt Hermetry sie: Ein Flow, der in einer Schleife hängt oder immer wieder fehlschlägt, pausiert sich selbst, Nebenwirkungen werden in ihrer Häufigkeit begrenzt, und Nachrichten, die nicht ausgeführt werden konnten, werden als fehlgeschlagene Nachrichten für dich zum erneuten Ausführen aufbewahrt. Diese Seite erklärt jeden Schutz und was du tust, wenn einer greift.

Flow-Schutzmechanismen

SchutzStandardWas passiert
Läufe pro Minute6.000 Läufe eines Flows in einer gleitenden MinuteDer Flow pausiert sich selbst: Eine Schleife wird vermutet
Fehlschlagende Läufe100 fehlgeschlagene Läufe in FolgeDer Flow pausiert sich selbst
Gleichzeitige Läufe16 Läufe eines Flows gleichzeitigWeitere Läufe warten (höchstens 1.000 pro Flow; die ältesten werden darüber hinaus verworfen)
Fan-out100 Nachrichten, die ein Block für eine Eingabe sendetDie übrigen Nachrichten dieses Blocks für diese Eingabe werden verworfen
Nachrichtengröße256 KiB pro NachrichtDie Nachricht wird abgelehnt (msg_too_big)
Schleifenschutz4 Sprünge von Ereignissen und Flow ausführen zwischen Flows; 512 Schritte in einem LaufDie Kette wird unterbrochen
Wiederholungen aufgebrauchtHöchstens 5 Versuche eines externen AufrufsDie Eingabe wird zu einer fehlgeschlagenen Nachricht, sofern der Flow den Fehler nicht abfängt
Wiederholte NachrichtenEine Gerätenachricht, die innerhalb von 60 Sekunden erneut eintrifftBestätigt, ohne einen Lauf auszulösen
Zu altEine Nachricht, die länger als 5 Minuten wartetWird nicht ausgeführt (Gerätenachrichten laufen im Root-Flow weiter und werden als verspätet markiert)
Gerätebefehle pro Minute30 Befehle und Einstellungen von Flows an ein GerätDer Befehl wird abgelehnt (limit)
Wiederholte BenachrichtigungenDieselbe Benachrichtigung an dieselbe Person innerhalb von 10 MinutenDiese Person wird übergangen

Dein Tarif kann andere Werte innerhalb fester Grenzen festlegen. Jedes Mal, wenn ein Schutz greift, wird das gezählt: in der Zeile des Flows (Begrenzt · Schutz), im Editor („Ein Flow-Schutz hat auf diesen Flow reagiert: …“, mit den markierten Blöcken) und in der Nutzungskarte (Flow-Schutzmechanismen diesen Monat). Siehe Flow-Limits.

Ein Flow, der sich selbst pausiert hat

Ein pausierter Flow startet keinen Lauf, bis er fortgesetzt wird. Seine Zeile nennt den Grund:

  • „Er hat sich selbst pausiert: Er lief in einer Minute öfter, als dieser Arbeitsbereich erlaubt, daher wird eine Schleife vermutet.“
  • „Er hat sich selbst pausiert: Zu viele seiner Läufe sind in Folge fehlgeschlagen.“

Die Verantwortlichen für Automatisierung erhalten den Alarm Flow hat sich selbst pausiert. Was zu tun ist:

  1. Öffne den Flow und sieh dir unter Aktivität > Fehler sowie die Läufe der letzten Minuten an.
  2. Behebe die Ursache: Unterbrich die Schleife (ein Flow, der sich selbst auslöst, oder ein Status-Auslöser, der einen Block beobachtet, der seinen Status bei jeder Nachricht ändert), oder behebe den fehlschlagenden Aufruf.
  3. Stelle bereit und setze dann über das Zeilenmenü des Flows oder den Banner im Editor Fortsetzen ein. Eine Pause behält den Speicher des Flows und die wartenden Nachrichten.

Root-Flows werden nie automatisch pausiert

Ein Root-Flow speichert die Daten jedes Geräts, das er bedient, daher ist er von der automatischen Pause und von Gleichzeitige Läufe ausgenommen. Wenn ein Root-Flow zu oft fehlschlägt, erhalten die Eigentümer und Administratoren der Organisation den kritischen Alarm Root-Flow nicht pausiert („Dieser Root-Flow wurde nicht pausiert, da er die Daten jedes Geräts speichert, das er bedient…“), höchstens einmal alle 6 Stunden pro Flow. Behebe es schnell: Fehlschlagende Läufe eines Root-Flows können bedeuten, dass Messwerte nicht gespeichert werden.

Der Notstopp

Der Notstopp pausiert alle laufenden Flows der Organisation, auf jedem Host, sofort, einschließlich der Root-Flows.

  1. Öffne in Automatisierung das Kopfmenü und wähle Alle Flows stoppen.
  2. Es steht dort: „Alle laufenden Flows dieses Arbeitsbereichs werden auf jedem Host sofort pausiert: Gerätenachrichten, Zeitpläne, Webhooks und Ereignisse starten keinen Lauf, bis du fortsetzt. Laufende Ausführungen werden beendet. Auch ein Root-Flow wird pausiert, sodass Gerätedaten in der Zwischenzeit nicht gespeichert werden.“
  3. Aktiviere „Ich verstehe, dass nichts läuft, bis die Flows fortgesetzt werden.“, gib STOP ein und bestätige.

Ein Banner zeigt „Notstopp: n Flows sind pausiert…“. Zum Beenden wähle Flows fortsetzen: Jeder Flow, den der Stopp pausiert hat, läuft wieder; ein Flow, der sich selbst pausiert hatte, bleibt pausiert. Beide Aktionen werden protokolliert.

Verwende ihn nur, wenn Flows Schaden anrichten (falsche Befehle senden, ein Partnersystem überfluten). Während er aktiv ist, werden keine Gerätedaten gespeichert.

Fehlgeschlagene Nachrichten

Eine Nachricht, die die Plattform nicht ausführen konnte, wird als fehlgeschlagene Nachricht (ein Dead Letter) aufbewahrt. Öffne sie über das Kopfmenü der Flow-Liste (Fehlgeschlagene Nachrichten, alle Flows eines Hosts) oder im Editor (Fehlgeschlagene Nachrichten, die an diesen Flow adressierten Nachrichten).

GrundBedeutung
Wiederholt fehlgeschlagenMehrfach zugestellt, ohne abgeschlossen zu werden
Ein Aufruf ist bei jedem Versuch fehlgeschlagenEin externer Aufruf hat alle Wiederholungen aufgebraucht, und der Flow hat den Fehler nicht abgefangen
Zu lange gewartetEin Webhook-Aufruf oder ein benannter Timer hat länger als seine Lebensdauer gewartet (nach einem Ausfall). „Wiederhole sie, um sie jetzt auszuführen.“
Durch ein erneutes Bereitstellen unvollendetDer zugehörige Lauf wurde nicht beendet, bevor die Version, auf der er lief, ersetzt wurde
Rückstau zu langZu viele Nachrichten der Organisation haben gewartet
Nicht lesbarDie gespeicherte Eingabe ist beschädigt
Vom Host abgelehntDer Host hat sie nicht angenommen

Jede Zeile zeigt Erstmals gesehen, Grund, Fehler und Versuche. Anzeigen zeigt die gespeicherte Eingabe (nur für Personen, die fehlersuchen dürfen).

  • Wiederholen stellt die Nachricht mit ihren ursprünglichen IDs wieder in die Warteschlange. „Ihr Lauf hat unter Umständen bereits einen Teil seiner Arbeit erledigt: Aufrufe, Nachrichten oder Schreibvorgänge, die er ausgeführt hat, können erneut geschehen.“ Blöcke, die nach außen aufrufen, senden denselben Idempotenz-Schlüssel, sodass ein Empfänger, der Duplikate erkennt, nur einen Aufruf sieht.
  • Verwerfen löscht sie. Danach kann sie nicht mehr wiederholt werden.

Jeder Host behält seine eigenen fehlgeschlagenen Nachrichten. Standardmäßig werden höchstens 10.000 aufbewahrt; darüber hinaus werden die ältesten entfernt. Bei 80 % erhalten die Verantwortlichen den Alarm Fehlgeschlagene Nachrichten fast voll, höchstens einmal alle 6 Stunden.

Eine verspätete Gerätenachricht in einem Root-Flow wird nie zur fehlgeschlagenen Nachricht: Sie wird gespeichert. Ein verspäteter Zeitplan-Takt wird einfach übersprungen.

Alarme

Fehler und Alarme (Kopfmenü der Flow-Liste) zeigt die Automatisierungsalarme der letzten 6 Stunden, eine Zeile pro veröffentlichtem Flow mit seinen Fehlern in 24 Stunden, den heutigen fehlgeschlagenen Nachrichten und der Aufzeichnungsstufe, die häufigsten Fehler der letzten 7 Tage sowie Summen pro Tag.

Die Alarmregel legt fest, wer wann informiert wird:

FeldBedeutung
Alarme sendenEin oder aus
Fehler pro Minute1 bis 10.000
Minuten in Folge1 bis 19
FlowsKeiner angekreuzt = alle Flows
EreignisseKeiner angekreuzt = alle Alarmarten
EmpfängerEine Mitglieds-Benutzer-ID pro Zeile, höchstens 100. Leer: die Personen, die Automatisierung verwalten dürfen. E-Mail-Adressen werden nicht akzeptiert.

Alarmarten: Viele Fehler, Aufrufe pausiert (Schutzschalter offen), Nebenwirkung gedrosselt, Block startet nicht, Fehlgeschlagene Nachrichten fast voll, Flow hat sich selbst pausiert und Root-Flow nicht pausiert. Root-Flow nicht pausiert wird unabhängig von der Regel immer an die Eigentümer und Administratoren sowie an die Empfänger der Regel gesendet.

Aufrufe pausiert (Schutzschalter)

Ein Block, dessen externe Aufrufe immer wieder fehlschlagen (ein HTTP-Endpunkt, der nicht erreichbar ist), pausiert seine Aufrufe für eine Weile; seine Nachrichten schlagen in der Zwischenzeit mit circuit_open fehl. Die Ereignisse des Flows zeigen Aufrufe pausiert (Schutzschalter offen) und später Aufrufe wieder aufgenommen (Schutzschalter geschlossen). Behebe den Empfänger; der Block erholt sich von selbst.