Alle Artikel
Shopware 64 min

Shopware 6 Cronjob Fehler – Diagnose & Lösungen

Cronjobs sind das Herzstück vieler Automatisierungen in Shopware 6. Sie kümmern sich um Newsletter-Versand, Produktaktualisierungen, Index-Aktualisierungen und vieles mehr. Wenn Shopware 6 Cronjob Fehler auftreten, kann das zu fehlenden E-Mails, veralteten Produktdaten oder Performance-Problemen führen. In diesem Artikel erfährst du, wie du diese Fehler systematisch diagnostizierst und behebst.

Typische Shopware 6 Cronjob Fehler erkennen

Die meisten Shopware 6 Cronjob Fehler zeigen sich nicht sofort. Oft merkst du erst nach Tagen, dass bestimmte Aufgaben nicht mehr ausgeführt werden. Typische Symptome sind:

  • Newsletter werden nicht versendet
  • Produktexporte laufen nicht mehr
  • Der Suchindex wird nicht aktualisiert
  • Bestellbestätigungen kommen verspätet
  • Scheduled Tasks bleiben auf "queued" stehen

Im Shopware-Backend findest du unter "Einstellungen → System → Geplante Aufgaben" eine Übersicht aller Cronjobs. Hier siehst du die letzte Ausführung und mögliche Fehlermeldungen. Wenn Tasks seit Stunden oder Tagen nicht mehr liefen, liegt definitiv ein Problem vor.

Häufigste Ursachen für Cronjob-Probleme

1. Cron-Konfiguration fehlt oder ist falsch

Die häufigste Ursache: Der Server-Cronjob wurde nie eingerichtet oder läuft nicht mehr. Shopware 6 benötigt einen System-Cronjob, der regelmäßig (idealerweise jede Minute) die URL /api/_action/scheduled-task/run aufruft.

Prüfe in deiner Crontab (crontab -e), ob ein Eintrag existiert:

* * * * * cd /pfad/zu/shopware && php bin/console scheduled-task:run

Alternativ per Webhook:

* * * * * curl https://deine-domain.de/api/_action/scheduled-task/run

2. PHP-Speicher oder Timeout-Limits

Große Shops mit vielen Produkten oder komplexen Aufgaben stoßen oft an Limits. Shopware 6 Cronjob Fehler durch Speicherprobleme erkennst du an Meldungen wie "Allowed memory size exhausted".

Erhöhe in der php.ini:

  • memory_limit = 512M (oder höher)
  • max_execution_time = 300

3. Datenbank-Locks oder Performance

Bei großen Datenmengen können Cronjobs sich gegenseitig blockieren. Wenn mehrere Tasks gleichzeitig auf dieselben Tabellen zugreifen, entstehen Locks.

4. Plugin-Konflikte

Manche Plugins registrieren eigene Scheduled Tasks, die fehlerhaft programmiert sind und das gesamte System blockieren. Deaktiviere nach und nach Plugins, um den Übeltäter zu finden.

Schritt-für-Schritt-Diagnose

Logs prüfen

Shopware 6 schreibt Fehler in mehrere Log-Dateien. Schau hier nach:

var/log/prod-YYYY-MM-DD.log
var/log/dev-YYYY-MM-DD.log

Suche nach "scheduled-task", "cron" oder spezifischen Task-Namen. Die Logs zeigen dir Stack-Traces und konkrete Fehlermeldungen.

Console-Befehle testen

Führe Cronjobs manuell aus, um Fehler direkt zu sehen:

php bin/console scheduled-task:run

Oder einen spezifischen Task:

php bin/console scheduled-task:run --task="product_export.export"

Datenbank untersuchen

In der Tabelle scheduled_task siehst du den Status aller Tasks:

SELECT name, status, last_execution_time, next_execution_time 
FROM scheduled_task 
WHERE status != 'scheduled'
ORDER BY last_execution_time DESC;

Tasks mit Status "failed" oder "running" (seit Stunden) sind problematisch.

Konkrete Lösungen für häufige Fehler

"No scheduled tasks found"

Dieser Fehler tritt auf, wenn die Scheduled Tasks nicht registriert sind. Lösung:

php bin/console scheduled-task:register
php bin/console cache:clear

Tasks bleiben auf "running" hängen

Wenn ein Cronjob abstürzt, bleibt der Status auf "running". Setze ihn manuell zurück:

UPDATE scheduled_task 
SET status = 'scheduled', run_interval = 300 
WHERE status = 'running' 
AND last_execution_time < DATE_SUB(NOW(), INTERVAL 1 HOUR);

Speicherfehler bei großen Exporten

Teile große Tasks in kleinere Batches auf. Bei eigenen Cronjobs nutze das Message-Queue-System von Shopware 6 für asynchrone Verarbeitung.

Performance-Probleme

Erhöhe das Run-Interval für nicht-kritische Tasks:

UPDATE scheduled_task 
SET run_interval = 3600 
WHERE name = 'mein.nicht.kritischer.task';

Monitoring und Prävention

Um Shopware 6 Cronjob Fehler frühzeitig zu erkennen, empfiehlt sich ein Monitoring:

  • Externe Cronjob-Überwachung: Services wie Cronitor oder Healthchecks.io pingen deine Cronjob-URL und alarmieren bei Ausfällen
  • Custom-Logging: Erweitere Tasks um detailliertes Logging
  • Alerts einrichten: Bei kritischen Tasks (z.B. Zahlungsabgleich) automatische Benachrichtigungen per E-Mail

Ein einfaches Monitoring-Script:

#!/bin/bash
LAST_RUN=$(mysql -e "SELECT MAX(last_execution_time) FROM shopware.scheduled_task" -sN)
DIFF=$(( $(date +%s) - $(date -d "$LAST_RUN" +%s) ))

if [ $DIFF -gt 600 ]; then
    echo "WARNUNG: Cronjobs laufen seit $DIFF Sekunden nicht mehr!" | mail -s "Shopware Cronjob Alert" admin@domain.de
fi

Wann du professionelle Hilfe brauchst

Manche Shopware 6 Cronjob Fehler sind komplex und erfordern tiefes Framework-Wissen:

  • Fehler in Custom-Plugins oder Extensions
  • Performance-Optimierung bei großen Datenmengen
  • Komplexe Integrationen mit Warenwirtschaftssystemen
  • Race Conditions in Multi-Server-Umgebungen

Auch die richtige Infrastruktur-Konfiguration (Redis, RabbitMQ, Elasticsearch) beeinflusst die Cronjob-Performance erheblich.

Die Kosten für Cronjob-Debugging und -Optimierung liegen typischerweise zwischen 800€ und 3.000€, abhängig von der Komplexität. Bei umfangreichen Shop-Optimierungen mit mehreren betroffenen Bereichen kann der Aufwand auch höher sein.

Fazit

Shopware 6 Cronjob Fehler lassen sich meist mit systematischer Diagnose lösen. Prüfe zuerst die Basis-Konfiguration, dann Logs und Datenbank. Die meisten Probleme entstehen durch fehlende oder falsche Cron-Einträge, Ressourcen-Limits oder Plugin-Konflikte. Mit regelmäßigem Monitoring vermeidest du, dass Fehler unbemerkt bleiben und Geschäftsprozesse beeinträchtigen.

Du suchst einen Shopware-Entwickler für Cronjob-Probleme oder Shop-Optimierung? Ich helfe dir bei der Fehleranalyse und setze langfristige Lösungen um. Kostenloses Erstgespräch auf lonexa.de

Weitere Einblicke in meine Arbeit findest du in meinen Referenzen.

Shopware 6 Cronjob FehlerShopware 6FreelancerWebentwicklungDüsseldorf