Die Syncronisiserung bricht ab / der Cronjob steht auf "inaktiv"

Der initiale Sync nachdem das Plugin erstmalig installiert und konfiguriert worden ist, dauert für gewöhnlich länger. Dies ist abhängig von der Anzahl an Produkten, die synchronisiert werden sollen. Wenn der Cronjob ausgeführt wird, wird dieser von Shopware auf "inaktiv" gesetzt, nach der Ausführung wird der Status automatisch wieder auf "aktiv" gesetzt. Deswegen kann es verwirrend sein, wenn der Cronjob auf inaktiv steht, aber eigentlich ausgeführt werden sollte. Hier ist es hilfreich nachzusehen, wann der Cronjob das letzte Mal ausgeführt worden ist. Wenn dies kürzlich der Fall gewesen ist, sollte gewartet werden, ob sich der Status wieder auf "aktiv" setzt.

Wenn auch nach 30-60 Minuten keine Änderung eingetreten ist und der Cronjob immer noch auf inaktiv gesetzt ist, dann lohnt es sich in die Fehlersuche zu gehen. Folgende Dinge sind hier zu empfehlen:

  • 4a. Am häufigsten passiert es, dass der Cronjob durch die maximale Script-Ausführungszeit vom Server gestoppt wird. In diesem Fall ist zu empfehlen, die Synchronisation auf Shopware Ebene (Tab "Erweitert") und auf Mailchimp Ebene zurückzusetzen und erneut zu starten. Beim erneuten Starten sollte darauf geachtet werden, dass das Sync Limit heruntergsetzt wird, z.B. von 500 auf 100 Datensätze.

  • 4b. Hilft dies ebenfalls nicht, kann die "max execution time" in den PHP Einstellungen des Servers erhöht werden. Die Shopware-Logik arbeitet so, dass alle Cronjobs die zu einer bestimmten Zeit ausgeführt werden sollen, nach einander im selben Aufruf abgearbeitet werden. Dadurch kann es vorkommen, dass die Script-Ausführungszeit schnell überschritten wird und der Server die Skript abbricht.

  • 4c. Alternativ kann das Plugin auch ohne Shopware Cronjobs konfiguriert werden. Dafür lassen Sie die Cronjobs in den Shopware Einstellungen auf inaktv stehen und können direkt, in der Cronjob Konfiguration (auf dem Server im crontab), diese beiden Commands aufrufen, damit die Synchronisation unabhängig von der Shopware Logik ausgeführt wird:

  • Dieser Command führt den Sync alle 15 Minuten aus: */15 * * * * php bin/console jett:mc:sync

  • Dieser Command führt die Queue alle 5 Minuten aus. */5 * * * * php bin/console jett:mc:queue