Sheduled Task "Sitemap generate" wird nicht ausgeführt

Hallo zusammen,

ich habe bei mir das Problem, dass der Sheduled Tast „shopware.sitemap_generate“ nicht ausgeführt wird.
Bei mir steht der Status immer auf „queued“ aber dieser wird nie abgearbeitet obwohl er eigentlich einmal täglich laufen sollte.
Ich kann den CLI Befehl auch nicht direkt ausführen, der Befehl „php bin/console sitemap:generate“ funktioniert nicht, ich muss erst die Sales Channel ID anhängen damit er funktioniert. Mein funktionierender Befehl lautet also "php bin/console sitemap:generate -i de(HIER IST DIE SALES CHANNEL ID). Dann wird auch eine aktuelle und richtige Sitemap erstellt und alles ist gut. Ich habe aber keine Lust den Befehl jeden Tag auszuführen und würde gerne den Sheduled Task verwenden, der hängt ja scheinbar irgendwie. Ich vermute der erst genannte Befehl ohne Sales Channel ID verbirgt sich in der Sheduled Tast und kann daher nicht ausgeführt werden. Kann ich die Sheduled Task so manipulieren, dass ich selbst die Sales Channel ID anhänge und der Befehl dann richtig ausgeführt wird?

Vielleicht hat jemand ne Idee für mich, ich finde auf meinem Server auch keinen Ordner wo die Sheduled Tasks sich befinden.

Vielen Dank vorab für einen Tipp

Beste Grüße!

Versuche zuerst mal: Backend > Verkaufskanäle > Domains > Erstelle Domain-URLs darauf achten, dass keine http und https gleichzeitig eingetragen ist. Dann sollte php bin/console sitemap:generate wieder fehlerfrei funktionieren.

Sollte das nicht funktionieren, Cronjob auf dem Server manuell anlegen.

Danke für deinen Hinweis, das Problem hatte ich bei einem anderen Shop daher habe ich hier darauf bereits geachtet. Habe auch nochmal zur Sicherheit kontrolliert und ich habe nur 1 Domain mit HTTPS hinterlegt. Abseits dessen habe ich nur noch den Headless Verkaufskanal den man lt. Shopware nicht löschen sollte. Dort ist eine Fake Domain hinterlegt aber an dem wird es auch nicht liegen.

Gibt es eine Möglichkeit die Standard Sheduled Tasks zu bearbeiten? Ich würde gerne sehen welcher Befehl hier genau ausgeführt wird.

Erst mal schauen, was nicht funktioniert: php bin/console sitemap:generate -vvv und schauen, ob force etwas nutzt: php bin/console sitemap:generate -f

Der Task führt kein Befehl in der Console aus, sondern initiiert die Ausführung von PHP-Klassen.

Shopware\Core\Content\Sitemap\ScheduledTask\SitemapGenerateTask

Anstatt versuchen den Task zu ändern, würde ich versuchen das eigentliche Problem zu lösen.

Ich muss mich korrigieren, beide der von Dir genannten Befehle funktionieren auch. Verzeihung hatte das gerade falsch in Erinnerung vom anderen Shop. Die Befehle scheinen also alle sauber zu laufen die Frage jetzt wäre nur warum er nicht beginnt den Task abzuarbeiten.

Auf gut Glück: bin/console scheduled-task:register

Ansonsten schau dir mal das Plugin an. Kenne es nicht, aber vielleicht hilft es dir ja.

Hallo Zak-MacKracken!

Hast du schon eine Lösung für das Problem gefunden?

In meinem Shop (6.4.5.1) funktioniert es auch die Sitemaps mit ./console/sitemap:generate zu erzeugen, aber der Task läuft nicht im scheduler.

Er ist registriert, wenn ich ihn auf „schedule“ setzte geht er nach kurzem in „queued“, der ist auch kurz in der Tabelle enqueue, wird 1x verarbeitet (glaube ich), aber in der scheduled_task Tabelle bleibt der auf queued und es wir kein last_execution_time und kein neues next_execution_time eingetragen.

Vielleicht wird er nur gestartet und schlägt fel (sehe aber keinen Fehler in den logs).

Viele Grüße!

Hallo Zak-MacKracken,

glaube ich habs gefunden (Shopware 6 - Settings - Sitemap).
Hatte das hier auf Live stehen gehabt, d.h., der Task scheint „immer“ zu laufen.
Hatte es dann auf Scheduled gestellt, und jetzt läuft er 1x täglich gemäß Schedule.

D.h., also, wenn man Live hat, dann sollte man wohl den Task aus dem Scheduler entfernen.

Nicht ganz intuitiv aber zumindest eine Erklärung/Lösung.

Viele Grüße!

1 „Gefällt mir“