In Multi-Agent-Systemen können und werden Fehler auftreten — LLM-Timeouts, ungültige Outputs, Rate Limits, Netzwerkfehler. Ein robustes System stürzt nicht ab, sondern degradiert graceful. Dieses Kapitel zeigt die wichtigsten Patterns für resiliente n8n Multi-Agent-Pipelines.
Der Circuit Breaker verhindert, dass ein fehlerhafter Agent das gesamte System blockiert:
┌─────────────┐
│ CLOSED │ ← Normal: Anfragen gehen durch
│ (Fehler < 3) │
└──────┬──────┘
│ 3 Fehler in Folge
▼
┌─────────────┐
│ OPEN │ ← Blockiert: Anfragen werden sofort abgelehnt
│ (30s Pause) │
└──────┬──────┘
│ Nach 30 Sekunden
▼
┌─────────────┐
│ HALF-OPEN │ ← Test: Eine Anfrage wird durchgelassen
│ (1 Versuch) │
└─────────────┘
{
"function": "const state = $getWorkflowStaticData('global');\nconst agent = 'researcher';\nconst failures = state[agent + '_failures'] || 0;\nconst lastFailure = state[agent + '_last_failure'] || 0;\nconst now = Date.now();\n\nif (failures >= 3 && now - lastFailure < 30000) {\n return [{ json: { circuit: 'OPEN', fallback: true } }];\n}\nreturn [{ json: { circuit: 'CLOSED', proceed: true } }];"
}
Nicht jeder Fehler erfordert einen sofortigen Fallback — viele sind transient:
| Strategie | Wartezeit | Geeignet für |
|---|---|---|
| Sofortiger Retry | 0 Sekunden | Netzwerk-Glitches |
| Fixed Delay | 5 Sekunden | Rate Limits |
| Exponential Backoff | 1s → 2s → 4s → 8s | API-Überlastung |
| Exponential + Jitter | 1s±0.5 → 2s±1 → 4s±2 | Viele parallele Agents |
n8n bietet native Retry-Optionen für jeden Node:
Wenn der primäre Agent trotz Retries fehlschlägt, übernimmt ein Fallback:
| Primärer Agent | Fallback Agent | Strategie |
|---|---|---|
| GPT-4o Researcher | Claude Researcher | Modell-Wechsel |
| Deep Research Agent | Quick Research Agent | Qualitäts-Stufe |
| AI Writer | Template Writer | Deterministisch |
| Custom Agent | Cached Response | Letzte gute Antwort |
Primärer Agent → (Fehler?) → Fallback Agent 1 → (Fehler?) → Fallback Agent 2 → (Fehler?) → Default Response
Verwenden Sie den n8n Error Trigger Node, um nach einem fehlgeschlagenen Sub-Workflow automatisch den Fallback zu starten.
Anfragen, die nach allen Retries und Fallbacks fehlschlagen, landen in der Dead Letter Queue (DLQ):
CREATE TABLE dead_letter_queue (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
pipeline_id UUID NOT NULL,
agent_name TEXT NOT NULL,
input_data JSONB NOT NULL,
error_message TEXT,
retry_count INTEGER DEFAULT 0,
created_at TIMESTAMPTZ DEFAULT now(),
resolved_at TIMESTAMPTZ,
resolution TEXT -- 'retried', 'manual', 'discarded'
);
Konfigurieren Sie Alerts für kritische Fehler:
| Event | Kanal | Priorität |
|---|---|---|
| Circuit Breaker öffnet | Slack + E-Mail | Hoch |
| DLQ-Eintrag | Slack | Mittel |
| 3× Fallback in 10 Min | PagerDuty | Kritisch |
| Agent-Latenz > 30s | Dashboard | Niedrig |
Praxis-Tipp: Implementieren Sie zuerst einfache Retries (3×, exponential backoff) und einen Default-Fallback. Das fängt 95 % der Fehler ab. Circuit Breaker und DLQ fügen Sie hinzu, wenn Ihr System in Production läuft und Sie reale Fehlermuster sehen.