Skip to main content

Was sind Cronjobs?

Cronjobs sind automatisierte Aufgaben, die in regelmäßigen Abständen ausgeführt werden. Im JTL-Shop werden sie über eine Job-Queue verwaltet und sind essenziell für Routineaufgaben wie Bestandsaktualisierungen, Datenbereinigung und andere Hintergrundprozesse. Mit Resources & Health hast du volle Kontrolle über diese Prozesse. Die Cronjob-Verwaltung ist im Resources & Health Plugin integriert und startet automatisch nach der Installation. Es gibt keine zusätzliche Einrichtung erforderlich – das Plugin verwaltet alle Cronjobs zentral. Achte nur darauf, dass:
  • Das Plugin korrekt installiert ist
  • Dein Hoster regelmäßige Cron-Aufrufe erlaubt
  • Die Job-Queue regelmäßig abgerufen wird

Status-Übersicht

Cronjob Status

Cronjob-Status und Zombies

Die Status-Übersicht zeigt den aktuellen Status aller Cronjobs. Besonders wichtig ist das Verständnis von sogenannten Zombies – das sind Cronjobs, die einmal gestartet wurden, aber nie richtig beendet wurden. Sie bleiben mit dem Status running stecken, obwohl sie nicht mehr aktiv sind. Zombie-Erkennung: Zombies entstehen normalerweise durch:
  • Timeouts bei langen Operationen
  • Serverabstürze während Job-Ausführung
  • Lockfile-Probleme
  • Speichererschöpfung
Zombie beheben: Nutze den “Status reset (soft)” Button, um den Job wieder in den Normalzustand zu versetzen. Die bestehenden Daten bleiben erhalten.

Konfiguration

Cronjob Konfiguration

Cronjob-Felder und Einstellungen

Die Tabelle zeigt alle verfügbaren Cronjobs mit ihren aktuellen Informationen:
SpalteErklärung
JobtitelName/Bezeichnung des Cronjobs
FrequenzZeitintervall, in dem der Job automatisch ausgeführt wird (z.B. stündlich, täglich, wöchentlich)
StatusAktueller Status: queued (wartet), idle (inaktiv), running (läuft), completed (fertig), failed (Fehler)
Letzte AusführungZeitstempel der letzten erfolgreichen Ausführung
Nächste AusführungZeitstempel, wann der Job das nächste Mal ausgeführt wird
TriggerArt der Auslösung (automatisch, manuell, ASAP)
TimeoutMaximale Zeit, die der Job laufen darf, bevor er abgebrochen wird
AktionenVerfügbare Steuerbefehle (ausführen, zurücksetzen, löschen)

Aktionen

Für jede Cronjob-Aufgabe stehen dir verschiedene Aktionen in der Aktionsleiste zur Verfügung:
Umgeht die JTL-Queue und den Job-Shuffle und führt den Job sofort aus. Der Listener startet automatisch für Live-Logs. Nutze das, wenn du einen Job sofort ausgeführt haben möchtest, ohne auf den nächsten regulären Durchlauf zu warten.
Setzt nextStart=NOW(). Der Job läuft beim nächsten regulären Queue-Durchlauf mit. Nicht so aggressiv wie “direkt ausführen”, aber schneller als der reguläre Rhythmus. Ideal für zeitkritische Jobs.
Setzt isRunning=0 in der tjobqueue Tabelle. Der Job macht bei tasksExecuted weiter. Der Fortschritt bleibt erhalten. Nutze das, wenn ein Job hängen bleibt, aber du ihn nicht komplett neu starten möchtest.
Löscht alle tjobqueue-Einträge komplett. Der Cron-Job bleibt in der tcron Tabelle und startet beim nächsten Lauf von vorne. Setzt den Job auf den Anfang zurück. Nutze das bei hartnäckigen Problemen.
Entfernt den Job aus tcron und tjobqueue. Irreversibel! Plugin-eigene Jobs werden beim nächsten Plugin-Boot wieder angelegt. Vorsicht – nutze das nur, wenn du den Job wirklich nicht mehr brauchst!

Live-Logs

Live-Logs Ansicht
Wenn du einen Cronjob startest, erscheinen die Live-Logs automatisch und geben dir einen detaillierten Einblick in die Ausführung des Jobs. Dies ist besonders hilfreich beim Debugging und zum Überwachen von zeitkritischen Aufgaben. Die Live-Logs zeigen:
  • Echtzeit-Status der Job-Ausführung
  • Detaillierte Fehler- und Warnmeldungen
  • Fortschritt bei mehrstufigen Jobs
  • Timestamp für jede Aktion
Wichtig: Nutze die harten Resets und Löschungen mit Bedacht. Für die meisten Probleme reicht ein softerer Reset vollkommen aus. Nur wenn nichts anderes hilft, nutze die härteren Optionen.