Neu Cron für Export-Manager "tut nix"

DITH-Shop

Sehr aktives Mitglied
8. Juli 2013
2.804
200
Moin,

bisher hatte ich Shop4 in eigener Regie auf eigenem Webserver.
Da konnte ich schnell eingreifen wenn was nicht lief. Nun habe ich Shop5 mit JTL Hosting.

Die Exporte (Google Shopping, Relevanz etc.) laufen nicht wirklich.
Einmal täglich - bei erreichen der "nächster Start (geplant)" Zeit - läuft der Export wohl an, erstellt fast leere Dateien und das war's dann.
Egal ob jemand im Shop surft, oder per Cronjob von extern die "cron_inc" aufgerufen wird. Es passiert nichts mehr.
Auch ein "Cron manuell anstoßen" bringt keinerlei weitere Exporte. Bei den Einstellungen für Pseudo-Cron-Methode habe ich auch schon beide Möglichkeiten getestet.

Hat da jemand eine Ahnung? Oder schnelle Lösung?
Ein Ticket hatte ich schon aufgemacht, aber bisher gab es keine Rückmeldung.

Bis zum Update von Shop 5.2 auf 5.3 scheint es funktioniert zu haben, denn das Datei-Datum der letzten Erzeugung steht auf genau diesem Datum fest.
 

DITH-Shop

Sehr aktives Mitglied
8. Juli 2013
2.804
200
Moin,

bisher hatte ich Shop4 in eigener Regie auf eigenem Webserver.
Da konnte ich schnell eingreifen wenn was nicht lief. Nun habe ich Shop5 mit JTL Hosting.

Die Exporte (Google Shopping, Relevanz etc.) laufen nicht wirklich.
Einmal täglich - bei erreichen der "nächster Start (geplant)" Zeit - läuft der Export wohl an, erstellt fast leere Dateien und das war's dann.
Egal ob jemand im Shop surft, oder per Cronjob von extern die "cron_inc" aufgerufen wird. Es passiert nichts mehr.
Auch ein "Cron manuell anstoßen" bringt keinerlei weitere Exporte. Bei den Einstellungen für Pseudo-Cron-Methode habe ich auch schon beide Möglichkeiten getestet.

Hat da jemand eine Ahnung? Oder schnelle Lösung?
Ein Ticket hatte ich schon aufgemacht, aber bisher gab es keine Rückmeldung.

Bis zum Update von Shop 5.2 auf 5.3 scheint es funktioniert zu haben, denn das Datei-Datum der letzten Erzeugung steht auf genau diesem Datum fest.
OK, vor ein paar wenigen Minuten kam die Support-Antwort:

In der Tat ist da ein dicker Bug in Shop 5.3 der nicht so schnell gefixt werden kann.
Aktuell funktioniert der Export ausschließlich per "Hand" => asynchron
 
  • Gefällt mir
Reaktionen: sah

OliverS

Sehr aktives Mitglied
Mitarbeiter
1. April 2022
123
60
Hückelhoven
Vorweg: Ich bin Supporter, kein Entwickler. Aber ich habe dazu folgenden Hotfix entwickelt, der in meinem Testshop funktioniert hat.

⚠️Aber: Ohne Gewähr.⚠️

Der Hotfix erfordert einen Eingriff in den Shop Core und ins Plugin:

Shop-Core:

In der /includes/src/Export/Exporter/PluginExporter.php folgendes unter dem } in Zeile 106 einfügen:

PHP:
private function quitGoogle(string $error = null)
    {
        if ($this->isCron) {return $this->isFinished();}
        
        $cb = new AsyncCallback();
        $cb->setProductCount(0);
        $cb->setError($error);

        return $this->syncReturn($cb);
    
    }

In der gleichen Datei in Zeile 96 das return $this->quit(); mit folgendem ersetzen:


PHP:
//Workaround GoogleShopping
        if ($this->model->getContent()==='PluginContentFile_googleShopping.php')
        {
            return $this->quitGoogle();
        } else {
            return $this->quit();
        }


Plugin:

in der /plugins/jtl_google_shopping/adminmenu/exportformat/googleShopping.php die } in Zeile 21 mit folgendem ersetzen:

PHP:
} else {$this->finishedInThisRun=true;}

Ich hänge die gepatchten Dateien für 5.3.1 und Google Shopping 2.2.2 an. Die Pfade in der ZIP sollten korrekt sein, falls nicht:

Die PluginExporter.php gehört in /includes/src/Export/Exporter
Die googleShopping.php gehört in /plugins/jtl_google_shopping/adminmenu/exportformat/

⚠️Backups nicht vergessen, Verwendung auf eigene Gefahr.⚠️

Der Hotfix ist eher konservativ und fügt einen Workaround speziell für GoogleShopping ein. Andere Plugin-Exporte sollten davon nicht betroffen sein.
 

Anhänge

  • GoogleShoppingCronHotfix.zip
    3,5 KB · Aufrufe: 6

McMarty

Aktives Mitglied
23. Januar 2018
29
4
OK, vor ein paar wenigen Minuten kam die Support-Antwort:

In der Tat ist da ein dicker Bug in Shop 5.3 der nicht so schnell gefixt werden kann.
Aktuell funktioniert der Export ausschließlich per "Hand" => asynchron
Das ist richtig giftig - wir sind auch gerade ins "offene Messer gelaufen". Wenn die Preise zu lange ungleich sind zwischen Shop und Google ads, dann werden die Produkte von Google automatisch entfernt. Wenn es zu viele Produkte betrifft kann das sogar zur Sperrung des gesamten Feeds führen. Eine Information seitens JTL wäre echt nett gewesen. Ich habe im IssueTracker nichts gefunden. Was heißt denn wohl "kann nicht so schnell gefixt werden" ?

Danke OliverS für den schnellen Lösungsansatz. Bitte nicht böse sein aber ich bin da ehrlich gesagt noch etwas skeptisch. Vielleicht gibts noch einen offiziellen Fix? Das wäre großartig ...
 

DITH-Shop

Sehr aktives Mitglied
8. Juli 2013
2.804
200
Eine Information seitens JTL wäre echt nett gewesen. Ich habe im IssueTracker nichts gefunden.
Laut Nachricht vom Support gab es bis zu meiner Meldung nur 2 Support-Tickets - daher haben die wohl nicht angenommen das es alle betrifft und auch keinen entsprechenden priorisierten Handlungsbedarf gesehen.
Seit erkennen des allgemeinen Problems arbeiten die wohl daran, aber vielleicht sollten sich einfach mal alle betroffenen melden damit das forciert wird.

Man kann - was die GOOGLE-Exporte angeht, aber von Hand einen asynchronen export anstoßen. Das Fenster muss aber offen bleiben, ggf muss man alle paar Stunden nochmals anschubsen falls es sehr viele Artikel sind.
 
  • Gefällt mir
Reaktionen: McMarty

OliverS

Sehr aktives Mitglied
Mitarbeiter
1. April 2022
123
60
Hückelhoven
Es gibt da noch einen einfacheren, weniger konservativen Hotfix für GoogleShopping:

in der /includes/src/Export/Exporter/PluginExporter.php Zeile 96 mit folgender ersetzen:

PHP:
return $this->isCron ? $export->isFinished() : $this->quit();

Das wird in diesem Fall allerdings ggf. auch Auswirkungen auf andere Plugins haben, die per Cron exportieren.

Edit: Als Kompromiss aus beiden Hotfixes wäre es auch möglich, die Zeile durch folgendes zu ersetzen:

PHP:
//Workaround GoogleShopping
if ($this->model->getContent()==='PluginContentFile_googleShopping.php')
{
return $this->isCron ? $export->isFinished() : $this->quit();
} else {
return $this->quit();
}

Das ändert dann wiederum nur speziell für GoogleShopping und bereits funktionierende Plugin-Exporte sollten davon unberührt bleiben.
 
Zuletzt bearbeitet:

OliverS

Sehr aktives Mitglied
Mitarbeiter
1. April 2022
123
60
Hückelhoven
Laut Nachricht vom Support gab es bis zu meiner Meldung nur 2 Support-Tickets - daher haben die wohl nicht angenommen das es alle betrifft und auch keinen entsprechenden priorisierten Handlungsbedarf gesehen.
Seit erkennen des allgemeinen Problems arbeiten die wohl daran, aber vielleicht sollten sich einfach mal alle betroffenen melden damit das forciert wird.
Das hat eine hohe Priorität. Die Problematik ist uns da auch bewusst, sonst würde ich hier keinen Hotfix anbieten. Ticket dazu existiert ebenfalls: https://issues.jtl-software.de/issues/SHOP-8017
 

McMarty

Aktives Mitglied
23. Januar 2018
29
4
Das wird in diesem Fall allerdings ggf. auch Auswirkungen auf andere Plugins haben, die per Cron exportieren.
Was für Auswirkungen sind das denn genau? Wir haben noch exporter zu verschiedenen anderen Diensten...

Das hat eine hohe Priorität. Die Problematik ist uns da auch bewusst, sonst würde ich hier keinen Hotfix anbieten. Ticket dazu existiert ebenfalls: https://issues.jtl-software.de/issues/SHOP-8017
Ah ok das war so eben nicht erkennbar. Ich habe gerade auch ein Ticket dazu auf gemacht.
 

DITH-Shop

Sehr aktives Mitglied
8. Juli 2013
2.804
200
Was für Auswirkungen sind das denn genau? Wir haben noch exporter zu verschiedenen anderen Diensten...


Ah ok das war so eben nicht erkennbar. Ich habe gerade auch ein Ticket dazu auf gemacht.
Ja, sorry. Ich drücke mich manchmal etwas unverständlich aus.
bis zu meiner Meldung nur 2 Support-Tickets - daher haben die wohl nicht angenommen das es alle betrifft und auch keinen entsprechenden priorisierten Handlungsbedarf gesehen.
Seit erkennen des allgemeinen Problems arbeiten die wohl daran
Sollte nur heißen das es bis zu meiner Meldung (vor einigen Tagen) nichts dazu gab, aber seit erkennen des Problems eben priorisiert daran gearbeitet wird.
 

McMarty

Aktives Mitglied
23. Januar 2018
29
4
Das sollte auch keine Generalkritik an deiner Ausdrucksweise sein. Es ist nur so das wir als Shopbetreiber keinen Einblick haben was mit welcher Priorität bis wann bearbeitet wird (außer das Versionsziel im Bugtracker). Das führ einfach schnell zu Frust ...
 

OliverS

Sehr aktives Mitglied
Mitarbeiter
1. April 2022
123
60
Hückelhoven
Was für Auswirkungen sind das denn genau? Wir haben noch exporter zu verschiedenen anderen Diensten...
Der etwas komplexere Hotfix weiter oben sollte da keine Auswirkungen haben, weil da ein Spezialfall für GoogleShopping eingerichtet wird. Beim einfacheren werden Plugin-Exporte über den Cron zwar vermutlich durchlaufen, aber eventuell nicht abgeschlossen. Es sei denn, die Exporte durch die anderen Plugins benutzen die gleichen Variablennamen wie GoogleShopping. Wenn die restlichen allerdings keine Plugin-Exporte sind, sondern Exporte, die über den Shop selbst angelegt wurden, sind beide Varianten kein Problem.
 
  • Gefällt mir
Reaktionen: McMarty

DITH-Shop

Sehr aktives Mitglied
8. Juli 2013
2.804
200
Der etwas komplexere Hotfix weiter oben sollte da keine Auswirkungen haben, weil da ein Spezialfall für GoogleShopping eingerichtet wird. Beim einfacheren werden Plugin-Exporte über den Cron zwar vermutlich durchlaufen, aber eventuell nicht abgeschlossen. Es sei denn, die Exporte durch die anderen Plugins benutzen die gleichen Variablennamen wie GoogleShopping. Wenn die restlichen allerdings keine Plugin-Exporte sind, sondern Exporte, die über den Shop selbst angelegt wurden, sind beide Varianten kein Problem.
Habe die "kürzere" Version umgesetzt.
Google-Shopping Plugin Export läuft wieder.

Andere Plugin-Exporte laufen bei mir nicht.
relevanz und Meta Pixel Produktkatalog.
Für diese gibt es eine vermutlich falsche Fehlermeldung über angeblich falsche Schreibrechte.
Da das vor dem Update von 5.2 auf 5.3 aber einwandfrei lief und sich die Schreibrechte nicht geändert haben sollten, muss das ein anderes Problem sein.
 

OliverS

Sehr aktives Mitglied
Mitarbeiter
1. April 2022
123
60
Hückelhoven
Habe die "kürzere" Version umgesetzt.
Google-Shopping Plugin Export läuft wieder.

Andere Plugin-Exporte laufen bei mir nicht.
relevanz und Meta Pixel Produktkatalog.
Für diese gibt es eine vermutlich falsche Fehlermeldung über angeblich falsche Schreibrechte.
Da das vor dem Update von 5.2 auf 5.3 aber einwandfrei lief und sich die Schreibrechte nicht geändert haben sollten, muss das ein anderes Problem sein.
Sind die beiden Plugins denn für 5.3 freigegeben, bzw. Versionen für 5.3 installiert? Die Export-Schnittstelle hat sich geändert, ohne Update könnte es generell möglich sein das die nicht funktionieren, falls die Plugins die Export-Schnittstelle nutzen und das nicht selbst machen.
 

DITH-Shop

Sehr aktives Mitglied
8. Juli 2013
2.804
200
Sind die beiden Plugins denn für 5.3 freigegeben, bzw. Versionen für 5.3 installiert? Die Export-Schnittstelle hat sich geändert, ohne Update könnte es generell möglich sein das die nicht funktionieren, falls die Plugins die Export-Schnittstelle nutzen und das nicht selbst machen.
Nun, in der Plugin-Übersicht sehe ich keine Fehlermeldungen, die Shop-Version stimmt mit den angezeigten Mindestversionen überein.
Die Plugin-Einstellungen lassen sich allesamt problemlos öffnen und konfigurieren.

Wenn man dann aber im Kleingedruckten der Dokus bei WS herumsucht sind die Plugins NICHT explizit für >= 5.3 freigegeben.
Habe also die "Ars**karte" gezogen und muss hoffen das der Shop und auch die Plugins kurzfristig gefixt / angepasst werden.

Mach ich halt Urlaub. Bin eh krank 🤪
 

McMarty

Aktives Mitglied
23. Januar 2018
29
4
PHP:
Code:
//Workaround GoogleShopping
if ($this->model->getContent()==='PluginContentFile_googleShopping.php')
{
return $this->isCron ? $export->isFinished() : $this->quit();
} else {
return $this->quit();
}
Kurze Rückmeldung: Die Variante läuft bei uns jetzt seit einer knappen Woche, zusammen mit anderen Exporten die über "Exportformate" erstellt wurden, ohne Probleme.
 

ple

Sehr aktives Mitglied
20. August 2019
667
137
kann sein, dass es auch unter 5.2.4 nicht funktioniert?
Unter export => weitere Exporte => googleshopping steht immer nur das Datum, wo ich es mal händisch gemacht habe, aber das ist schon Tage her.

Gruß
 

DITH-Shop

Sehr aktives Mitglied
8. Juli 2013
2.804
200
Sind die beiden Plugins denn für 5.3 freigegeben, bzw. Versionen für 5.3 installiert? Die Export-Schnittstelle hat sich geändert, ohne Update könnte es generell möglich sein das die nicht funktionieren, falls die Plugins die Export-Schnittstelle nutzen und das nicht selbst machen.
Ja, inzwischen sind die Plugins für 5.3 angepasst, läuft aber trotzdem nicht
 

simplybecause

Sehr aktives Mitglied
25. Dezember 2012
135
35
Bin mit Shopversion 5.2.4 gestartet (noch nicht online) und habe die Plugin-Version 2.2.2 gerade eingerichtet.
Oben genannte Änderungen habe ich nicht übernommen.
Der Export-Manager kommt nicht über 500 hinaus (ist nur ein Bruchteil der Artikel), der Cron läuft aber.
Die Datei enthält aber alle Artikeldaten. Komisch.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu (WMS-)Lager - Lagerplatz - Für den verfügbaren Bestand sperren - Verwirrung User helfen Usern - Fragen zu JTL-Wawi 3
Neu Server Hardware für eigenes Wawi / SQL Hosting Installation von JTL-Wawi 3
Neu Individueller Festpreis für Kunden lässt sich nicht speichern. JTL-Wawi - Fehler und Bugs 1
Neu Affiliate Plugin Empfehlung für JTL Shop 5 Plugins für JTL-Shop 0
Neu ETA für Onlineshop-Abgleich JTL-Wawi - Ideen, Lob und Kritik 0
Neu Mindestbetrag für kostenlosen Versand Allgemeine Fragen zu JTL-Shop 0
Neu Ameise: Hilfe für Eigener Export JTL Ameise - Eigene Exporte 5
JTL-Wawi 1.9.7.1 – Wie kann man "Suchbegriffe" für Kaufland.de anlegen? JTL-Wawi 1.9 0
Neu Versandpreise für Ebay bearbeiten User helfen Usern - Fragen zu JTL-Wawi 0
JTL 1.9.7.0 | Warum ändert sich der Nummernkreis für Rechnungen bei Bestellungen aus dem OTTO-Market und bei anderen Marktplatzanbindungen nicht? Otto.de - Anbindung (SCX) 3
Neu 🌟Neues Plugin: digi·access - Die Lösung für Barrierefreiheit Plugins für JTL-Shop 17
Neu Plugin Debugging installiertes Plugin sorgt für 2-3 Sekunden längere Ladezeit seit JTLShop5 Plugins für JTL-Shop 2
Neu Otto PRODUCT_LISTING_FAILED für importiertes und verknüpftes Listing Otto.de - Anbindung (SCX) 0
Neu Suche JTL-Plugin-Entwickler für Bewertungsanzeige in Google (Rich Snippets) Plugins für JTL-Shop 4
Neu Suchen IT Service Dienstleister für kleinere Aufgaben Dienstleistung, Jobs und Ähnliches 1
Neu EINFACHE Lösung für Packstation? Plugins für JTL-Shop 6
Neu WMS Mobile Wareneingang: Etikett für Artikel drucken Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Beantwortet eigene Chargen Übersicht für "Verknüpfte Artikel" Eigene Übersichten in der JTL-Wawi 7
Letzte Lieferung von Lieferadressen für Außendienstmitarbeiter JTL-Wawi 1.9 1
In Diskussion Workflow für Kleinpaket anhand eigener "Volumenzahl" JTL-Workflows - Ideen, Lob und Kritik 1
Neu "Nicht Ausliefern" für Lagerplatz definieren Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Mailadresse für Mahnungen JTL-Wawi 1.9 0
Automatische Lagerbuchung mit verschiedenen Barcodes für ein und dasselbe Produkt JTL-Wawi 1.9 2
Kurz- Langbeschreibung Artikel lässt sich für den Ausdruck nicht einstellen bzw. abstellen. JTL-Wawi 1.9 0
Neu Gesamtzahl der Aufträge pro Monat für JTL Rechnung Einrichtung und Installation von JTL-eazyAuction 1
Telefonisch Beratung, Hilfe bei der Angebotserstellung für otto.de Otto.de - Anbindung (SCX) 0
Neu Aufteilung einer Sendung auf mehrere Lieferscheine für die Schweiz User helfen Usern - Fragen zu JTL-Wawi 0
Neu Artikelbeschreibung für diverse Artikel ergänzen Arbeitsabläufe in JTL-Wawi 1
Neu Anfrage für CSS Anpassung Nova Childtemplate Dienstleistung, Jobs und Ähnliches 1
Neu Drucker für Gutscheine Allgemeine Fragen zu JTL-Vouchers 0
Neu Connector für Geschäftspartner Allgemeines zu den JTL-Connectoren 1
Neu Artikel für spezielle Kunden ausblenden Allgemeine Fragen zu JTL-Shop 3
Neu Zustandstexte für ebay auslesen? JTL-Ameise - Fehler und Bugs 2
Neu BUG: kann die neu erstellte Vorlage für eine Rechnung nicht editieren, WAWI stürzt ab JTL-Wawi - Fehler und Bugs 3
SQL-Abfrage für eigene Übersicht im Verkauf – Aufträge zu Angeboten prüfen JTL-Wawi 1.9 2
Erfahrungsaustausch & Unterstützung für JTL-FFN-Setup gesucht JTL-Wawi 1.9 1
Rechnungsvorlagen für Kleinunternehmer JTL-Wawi 1.8 7
Neu Workflow-Bedingungen für Teillieferung aus zwei Lagern (Lager A & Lager B) User helfen Usern - Fragen zu JTL-Wawi 2
Neu Warenkorb Anzeige Problem für Kleinunternehmer Allgemeine Fragen zu JTL-Shop 6
Neu Plugin für Checkout Prozess Plugins für JTL-Shop 5
In Diskussion Grundsätzlich mehrfach Versandlabel für Pakete über 30kg JTL-Workflows - Ideen, Lob und Kritik 10
Neu Mindestbestand für bestimmte Lagerplätze User helfen Usern - Fragen zu JTL-Wawi 3
Neu Connector für Magento 2.4.6 Allgemeines zu den JTL-Connectoren 1
Neu Suche SQL Abfrage für Hersteller die keinem Artikel mehr zugeordnet sind. User helfen Usern - Fragen zu JTL-Wawi 6
Neu Faktura-Liste für Aufträge pro Kunden Schnittstellen Import / Export 1
Neu Artikelanzahl für die Startedition Allgemeine Fragen zu JTL-Shop 5
Neu Template für eigene Seite Templates für JTL-Shop 9
Neu Freelancer für Amazon-Account-Management & JTL-Wawi gesucht Dienstleistung, Jobs und Ähnliches 2
Neu Servicepartner für Workflow gesucht Dienstleistung, Jobs und Ähnliches 3
Neu Workflow für fehlerhafte Retouren User helfen Usern - Fragen zu JTL-Wawi 0

Ähnliche Themen