TaskHandler wird nicht ausgeführt

Es ist irgendwie ein komisches Verhalten in Shopware und aktuell in keiner Weise nachvollziehbar. Vielleicht hat ja hier jemand ähnliche Erfahrungen gemacht.

Nun ja, ich habe ein Plugin welches auch Task enthällt. Dieses Plugin habe ich auf einer Testumgebung mit exkakt selber SW Version wie die Liveumgebung erstellt. Beides Systeme laufen im PROD Modus mit SW 6.6.3.1

Damit ich überhaupt prüfen kann ob das Plugin und die Tasks laufen, benutze den den Logger Service.

Vereinfachte Darstellung aus der TaskHandler Klasse:
(Level critical wurde mit Absicht eingebunden)

  public function __construct(
    LoggerInterface $logger)
  {
    $this->logger = $logger;
    $this->logger->critical('Info: Start');
  }
  public function run(): void
  {
    $this->logger->critical('Info: Task start');
  }

Zur Erklärung:

In der Testumgebung, wird die Funktion run() ohne Probleme ausgeführt. Ich sehe im Log Viewer (vom Frosh Tool) die Einträge ‚Info: Start‘ und ‚Info: Task start‘.

In der Liveumgebung hingegen sehe ich nur den Eintrag ‚Info: Start‘. Der Eintrag ‚Info: Task start‘ fehlt, bedeutet wohl das die Funktion run() hier gar nicht ausgeführt wird.

Dieses Verhalten kann ich mir leider nicht erklären. Wäre es ein Fehler im Plugin, würde das Plugin in der Testumgebung auch nicht laufen. Irgendetwas bei Shopware blockiert bei bestimmten Merkmalen den Task. In der Liveumgebung sind auch andere Plugins. Vielleicht liegt es daran, aber an keiner einzigen Stelle bekomme ich eine brauchbare Fehlermeldung.

Es ist das selbe Verhalten wie ich hier bereits beschrieben habe:
=> Parallele Plugins mit unterschiedlichen Task laufen nicht korrekt

Was zum Geier ist das?

Was steht denn in der Datenbank?

In der Tabelle „scheduled_task“ kannst du jeden Task mit dem aktuellen Stand einsehen.

Die Ausführung sehe ich auch über das Frosh Tool. Aber um die Frage zu beantworten so steht mein Plugin hier mit Status „scheduled“ drin. Und die Ausführung alle 5 min geht auch.

Erscheinen irgendwelche (Fehler)Meldungen im Error log?
Der dazugehörige Task bzw der Name ist einzigartig? Nicht das der Task doppelt vorhanden ist (ist das überhaupt möglich) und dadurch das Verhalten verursacht wird?

Ich wäre sehr dankbar wenn es da welche geben würde, aber leider gar nichts. Werder im SW Log noch im Server Log oder sonstigens Logs.

Ja, darauf wurde im Vorfeld geachtet.

Aktuell habe ich das Plugin verworfen und als seperaten Cronjob außerhalb von SW laufen. Ist nicht das was ich wollte, aber das eigentliche Ziel wird umgesetzt. Ich brauch halt eine Lösung.

1 „Gefällt mir“

Gibt es hierzu weitere Lösungsansätze ode habe ich etwas übersehen? Problem seit Update von 6.5 → 6.6