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
| Schutz | Standard | Was passiert |
|---|---|---|
| Läufe pro Minute | 6.000 Läufe eines Flows in einer gleitenden Minute | Der Flow pausiert sich selbst: Eine Schleife wird vermutet |
| Fehlschlagende Läufe | 100 fehlgeschlagene Läufe in Folge | Der Flow pausiert sich selbst |
| Gleichzeitige Läufe | 16 Läufe eines Flows gleichzeitig | Weitere Läufe warten (höchstens 1.000 pro Flow; die ältesten werden darüber hinaus verworfen) |
| Fan-out | 100 Nachrichten, die ein Block für eine Eingabe sendet | Die übrigen Nachrichten dieses Blocks für diese Eingabe werden verworfen |
| Nachrichtengröße | 256 KiB pro Nachricht | Die Nachricht wird abgelehnt (msg_too_big) |
| Schleifenschutz | 4 Sprünge von Ereignissen und Flow ausführen zwischen Flows; 512 Schritte in einem Lauf | Die Kette wird unterbrochen |
| Wiederholungen aufgebraucht | Höchstens 5 Versuche eines externen Aufrufs | Die Eingabe wird zu einer fehlgeschlagenen Nachricht, sofern der Flow den Fehler nicht abfängt |
| Wiederholte Nachrichten | Eine Gerätenachricht, die innerhalb von 60 Sekunden erneut eintrifft | Bestätigt, ohne einen Lauf auszulösen |
| Zu alt | Eine Nachricht, die länger als 5 Minuten wartet | Wird nicht ausgeführt (Gerätenachrichten laufen im Root-Flow weiter und werden als verspätet markiert) |
| Gerätebefehle pro Minute | 30 Befehle und Einstellungen von Flows an ein Gerät | Der Befehl wird abgelehnt (limit) |
| Wiederholte Benachrichtigungen | Dieselbe Benachrichtigung an dieselbe Person innerhalb von 10 Minuten | Diese 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:
- Öffne den Flow und sieh dir unter Aktivität > Fehler sowie die Läufe der letzten Minuten an.
- 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.
- 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.
- Öffne in Automatisierung das Kopfmenü und wähle Alle Flows stoppen.
- 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.“
- Aktiviere „Ich verstehe, dass nichts läuft, bis die Flows fortgesetzt werden.“, gib
STOPein 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).
| Grund | Bedeutung |
|---|---|
| Wiederholt fehlgeschlagen | Mehrfach zugestellt, ohne abgeschlossen zu werden |
| Ein Aufruf ist bei jedem Versuch fehlgeschlagen | Ein externer Aufruf hat alle Wiederholungen aufgebraucht, und der Flow hat den Fehler nicht abgefangen |
| Zu lange gewartet | Ein 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 unvollendet | Der zugehörige Lauf wurde nicht beendet, bevor die Version, auf der er lief, ersetzt wurde |
| Rückstau zu lang | Zu viele Nachrichten der Organisation haben gewartet |
| Nicht lesbar | Die gespeicherte Eingabe ist beschädigt |
| Vom Host abgelehnt | Der 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:
| Feld | Bedeutung |
|---|---|
| Alarme senden | Ein oder aus |
| Fehler pro Minute | 1 bis 10.000 |
| Minuten in Folge | 1 bis 19 |
| Flows | Keiner angekreuzt = alle Flows |
| Ereignisse | Keiner angekreuzt = alle Alarmarten |
| Empfänger | Eine 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.

