WordPress-Watchdog für lange Recherchejobs: Cron, Logs, Recovery und Tagesberichte

Ein automatisierter Rechercheprozess ist nur dann nützlich, wenn er nicht nach dem ersten Netzwerkfehler, API-Limit oder PHP-Abbruch stehen bleibt. Für größere OCR- und Bibliotheksprojekte lohnt sich deshalb ein eigener Watchdog, der die Arbeit in kleine, wiederholbare Batches aufteilt.

Kleine Cron-Batches statt Marathonlauf

Ein mehrstündiger Einzelprozess ist anfällig für Timeouts und Speicherprobleme. Robuster ist ein Cronjob, der beispielsweise alle 15 Minuten startet und nur einen definierten Arbeitsblock erledigt.

  • einige OCR-Seiten lesen
  • Rohkandidaten speichern
  • starke Kandidaten extern prüfen
  • Fehler protokollieren
  • Fortschrittszähler aktualisieren

Persistenter Zustand

Warteschlangen, Cursor, zuletzt verarbeitete IDs und Statistiken gehören in Datenbank oder Optionen. Ein PHP-Prozess darf jederzeit enden können, ohne Fortschritt zu verlieren.

Locks verhindern Doppelarbeit

Ein transienter Lock verhindert parallele Läufe auf derselben Queue. Der Lock sollte ein Ablaufdatum haben, damit ein abgestürzter Prozess nichts dauerhaft blockiert.

Fehler-Recovery pro Quelle

Timeouts, Rate Limits oder geänderte Endpunkte dürfen nicht die gesamte Pipeline stoppen. Jede Quelle sollte getrennt Abfragen, Treffer, Fehler und neue Kandidaten zählen.

Budgetschutz

Kostenlose Sammler können unabhängig weiterlaufen, während kostenpflichtige Schritte pausieren, sobald kein Guthaben oder Tagesbudget mehr verfügbar ist.

Logs müssen Fragen beantworten

Welche Quelle lief? Wie viele Seiten oder Kandidaten wurden verarbeitet? Wie viele neue Datensätze entstanden? Wie viele Fehler gab es? Wie groß ist die verbleibende Queue?

Tagesbericht statt Backend-Kontrolle

Sinnvolle Kennzahlen sind Bestand gestern/heute, Netto-Zuwachs, OCR-Funde, internationale Kontextfunde, READY-Einträge, verworfenes Rauschen und fehlerhafte Quellen.

Mailtechnik dazu: WordPress-Kundenmails zuverlässig versenden.

Chat ist Steuerung, nicht Laufzeitumgebung

Der Rechercheprozess muss auf dem Server laufen. Ein Chat kann Konfiguration und Auswertung steuern, darf aber nicht Voraussetzung dafür sein, dass der Prozess weiterarbeitet.

Gesamtworkflow

Der Forschungsworkflow steht in Historische Zeitschriften automatisiert auswerten. Internationale Quellen: Kostenlose digitale Bibliotheken. Qualitätsstufe: OCR-Namen bereinigen.

Checkliste

  • Cronintervall sinnvoll wählen.
  • Jeden Lauf begrenzen.
  • Queue persistent speichern.
  • Lock mit Ablaufzeit setzen.
  • Fehler je Quelle getrennt zählen.
  • Rohfunde nie direkt veröffentlichen.
  • Kostenpflichtige APIs mit Budgetgrenzen schützen.
  • Daily Report mit Netto-Zuwachs versenden.

Fazit

Automatisierte Recherche wird durch viele kleine, überprüfbare Prozesse robust. WordPress eignet sich dafür gut, wenn Cron, Locks, Logs und Recovery sauber getrennt aufgebaut werden.