Try / Catch-Knoten
Der Try / Catch-Knoten fügt Ihren Workflows Fehlerbehandlung und Wiederholungslogik hinzu. Er fängt Fehler von vorgelagerten Knoten ab und kann den fehlgeschlagenen Abschnitt automatisch wiederholen, bevor er auf einen Fehlerpfad umleitet.
Funktionsweise
Platzieren Sie den Try / Catch-Knoten nach einer Abfolge von Schritten, die Sie absichern möchten. Wenn der Flow diesen Knoten erreicht:
- Wenn alle vorgelagerten Schritte erfolgreich abgeschlossen wurden, fährt der Flow über den SUCCESS-Ausgang fort.
- Wenn ein Fehler aufgetreten ist, wiederholt der Knoten den fehlgeschlagenen Abschnitt gemäß Ihrer Wiederholungskonfiguration.
- Wenn alle Wiederholungsversuche erschöpft sind, wird der Flow über den ERROR-Ausgang geleitet.
Start → API Call → Process Data → [Try / Catch]
├── SUCCESS → Save Result → End
└── ERROR → Send Alert → End
Konfiguration
Maximale Wiederholungen
Die maximale Anzahl von Wiederholungsversuchen, bevor aufgegeben wird. Setzen Sie den Wert auf 0, um Wiederholungen zu deaktivieren und nur Fehler abzufangen.
| Wert | Verhalten |
|---|---|
| 0 | Keine Wiederholungen – Fehler gehen direkt zum ERROR-Ausgang |
| 1–3 | Gut für vorübergehende Fehler (Netzwerk-Timeouts, Rate-Limits) |
| 5+ | Mit Vorsicht verwenden – beachten Sie die gesamte Ausführungszeit |
Backoff-Typ
Steuert, wie sich die Verzögerung zwischen Wiederholungen im Laufe der Zeit ändert.
- Fixed – Immer dieselbe Verzögerung. Beispiel mit 2s Verzögerung:
2s → 2s → 2s → 2s - Exponential – Die Verzögerung verdoppelt sich mit jedem Versuch. Beispiel mit 1s Verzögerung:
1s → 2s → 4s → 8s
Exponentielles Backoff wird empfohlen, wenn externe APIs aufgerufen werden, da es überlasteten Diensten progressiv mehr Zeit zur Erholung gibt.
Wiederholungsverzögerung
Die Basis-Wartezeit zwischen Wiederholungsversuchen. Wird mit der Verzögerungseinheit (Millisekunden, Sekunden oder Minuten) kombiniert.
Bei exponentiellem Backoff ist dies die anfängliche Verzögerung – nachfolgende Verzögerungen werden als delay × 2^(attempt - 1) berechnet.
Bei erschöpften Wiederholungen
Was passiert, wenn alle Wiederholungsversuche fehlgeschlagen sind:
- Continue to error path – Leitet den Flow über den ERROR-Ausgangsport. Verwenden Sie dies, wenn Sie den Fehler elegant behandeln möchten (protokollieren, Benachrichtigung senden, Fallback-Wert zurückgeben).
- Stop flow with error – Beendet die gesamte Workflow-Ausführung mit einem Fehlerstatus. Verwenden Sie dies, wenn der Fehler nicht behebbar ist.
Ausgänge
| Port | Beschreibung |
|---|---|
| SUCCESS | Der Flow fährt hier fort, wenn kein Fehler aufgetreten ist oder eine Wiederholung erfolgreich war |
| ERROR | Der Flow fährt hier fort, wenn alle Wiederholungen erschöpft sind (nur wenn „Continue to error path" ausgewählt ist) |
Beispiele
Einen instabilen API-Aufruf wiederholen
HTTP Request → [Try / Catch: 3 retries, 2s fixed delay]
├── SUCCESS → Parse Response
└── ERROR → Return Default Value
Exponentielles Backoff für ratenbegrenzte APIs
HTTP Request → [Try / Catch: 5 retries, 1s exponential]
├── SUCCESS → Store Data
└── ERROR → Log Error → Notify Team
Nur Abfangen (keine Wiederholung)
Code Node → [Try / Catch: 0 retries]
├── SUCCESS → Continue
└── ERROR → Send Error Report
Wichtige Hinweise
- Knoten vor dem Try / Catch werden bei einer Wiederholung erneut ausgeführt. Wenn ein Knoten eine E-Mail sendet oder in eine Datenbank schreibt, wird dieser Nebeneffekt erneut auftreten. Stellen Sie sicher, dass wiederholte Operationen sicher wiederholbar sind (idempotent).
- Die gesamte Ausführungszeit summiert sich. 5 Wiederholungen mit 4s exponentiellem Backoff bedeuten bis zu
1 + 2 + 4 + 8 + 16 = 31 SekundenWartezeit, bevor der Fehlerpfad ausgelöst wird. - Die Anzahl der Wiederholungen und die letzte Fehlermeldung stehen als Variablen in nachfolgenden Knoten zur Verfügung, sodass Sie sie in Fehlerberichte oder Protokolle aufnehmen können.