Troubleshooting fuer Worker Runtime
Warum sind Messages veraltet, obwohl der Tenant aktiv ist?
Ein aktiver Tenant reicht allein nicht aus. Pruefe diese ganze Kette:
- Tenant
enabled = true jobs.messages.config.enabled = true- Package-Abhaengigkeit bereits erfuellt
last_run_hotundlast_run_coldnicht zu alt- Lock-Akquise scheitert nicht wiederholt
Typische Veraltet-Muster
| Symptom | Wahrscheinliche Ursache |
|---|---|
| Messages veraltet, Packages frisch | Message-Loop deaktiviert, verzoegert oder durch Lock blockiert |
| Alerts veraltet, Messages frisch | Alert-Loop haengt hinterher |
| Payloads veraltet, Messages vorhanden | Payload-Loop deaktiviert oder blockiert |
| alles veraltet | Tenant deaktiviert, Upstream-Connectivity-Problem oder groesseres Worker-Problem |
Wichtige Runtime-Keys
| Key | Warum wichtig |
|---|---|
last_run | allgemeine Aktualitaet der Schleife |
last_run_hot | letzter schneller Message-Sync |
last_run_cold | letzter langsamerer History-Sync |
last_seen_completed | Fortschritt der Alert-Logik ueber completed Messages |
active_since_completed | Kontinuitaetsmarker fuer Message-Alert-Verarbeitung |
Typische Abhaengigkeitsfalle
Mehrere Schleifen warten explizit zuerst auf den Package-Abschluss:
- payloads
- messages
- alerts
Wenn Packages also nicht als fertig gelten, wirken spaetere Laufzeitschichten schnell gemeinsam veraltet.
Typische Lock-Symptome
Wenn der Code keinen Lock bekommt, wird ein Dispatch-Zyklus uebersprungen. Wiederholte Lock-Kollisionen koennen Daten zufaellig verzoegert wirken lassen, obwohl das System grundsaetzlich lebt.
Beispiele im aktuellen Code:
- messages hot lock
- messages cold lock
- alerts lock
- archive lock
- package lock
Warum fehlen Archivdaten?
Archiv-Scheduling ist planbasiert und nicht nur intervallbasiert.
Pruefe:
jobs.archive.config.enabledplan_runarchive_older_thandelete_older_than- ob die aktuelle Zeit die geplante Tageszeit bereits ueberschritten hat
Warum koennen Alerts hinter Messages herhaengen?
Alerting liegt downstream von Package-Abhaengigkeit und Message- oder Artefaktfrische. Deshalb koennen Alerts trotz bereits neuerer Message-Zeilen noch hinterherhaengen.
Siehe:
Schnelle Diagnoseleiter
- Packages frisch?
- Messages hot frisch?
- Messages cold frisch?
- Payloads frisch?
- Alerts frisch?
- UI trotz allem veraltet?
Wenn Schritt 1 bis 5 gesund aussehen, liegt der Verdacht eher bei UI-Caching oder viewspezifischem Query-Verhalten als bei der eigentlichen Runtime-Erfassung.