Keine Daten älter als 1 Jahr nach Import von alten Logs

Hallo zusammen
Ich hoffe das wird jetzt nicht als Doppelpost gewertet - habe bereits im englischen Foum nach Hilfe gefragt. Aber vielleicht versteht ja keiner mein Englisch !?
Daher nochmal in Deutsch:
Ich habe per eigenem PHP Skript alte Daten in Matomo importiert, d.h. per Tracking API mit dem “cdt” Parameter Besuche und Käufe “nachgeneriert” - bis zurück ins Jahr 2005.
Dann habe ich per “Invalidate Reports” Plugin alle Berichte zum neu generieren markiert.
Leider gehen die neu generierten Daten maximal ein Jahr zurück - alle älteren Daten werden nirgends angezeigt.
Hat jemand eine Idee ?
Danke
Gruß Alex

Habe mir nun den PHP Code des “CronArchive.php” angesehen und konnte dadurch ein paar Parameter setzen. Leider noch immer ohne Erfolg.
Eine Auswertung eines bestimmten Zeitraums (das Jahr 2005, nur Wochen, Monate, Jahre) bringt keine Berichte / eCommerce Zahlen für 2005 raus

INFO CoreAdminHome[2020-04-24 05:16:45 UTC] [3cc20] START
INFO CoreAdminHome[2020-04-24 05:16:45 UTC] [3cc20] Starting Matomo reports archiving...
INFO CoreAdminHome[2020-04-24 05:16:45 UTC] [3cc20] Old report was invalidated for website id 1
INFO CoreAdminHome[2020-04-24 05:16:45 UTC] [3cc20] Will pre-process for website id = 1, period = week, date = 2005-01-31,2005-12-31
INFO CoreAdminHome[2020-04-24 05:16:45 UTC] [3cc20] - pre-processing all visits
INFO CoreAdminHome[2020-04-24 05:17:07 UTC] [3cc20] Archived website id = 1, period = week, 0 segments, 0 visits in weeks included in: 2005-01-31,2005-12-31, Time elapsed: 21.241s
INFO CoreAdminHome[2020-04-24 05:17:07 UTC] [3cc20] Will pre-process for website id = 1, period = month, date = 2005-01-31,2005-12-31
INFO CoreAdminHome[2020-04-24 05:17:07 UTC] [3cc20] - pre-processing all visits
INFO CoreAdminHome[2020-04-24 05:17:09 UTC] [3cc20] Archived website id = 1, period = month, 0 segments, 0 visits in months included in: 2005-01-31,2005-12-31, Time elapsed: 1.904s
INFO CoreAdminHome[2020-04-24 05:17:09 UTC] [3cc20] Will pre-process for website id = 1, period = year, date = 2005-01-31,2005-12-31
INFO CoreAdminHome[2020-04-24 05:17:09 UTC] [3cc20] - pre-processing all visits
INFO CoreAdminHome[2020-04-24 05:17:09 UTC] [3cc20] Archived website id = 1, period = year, 0 segments, 0 visits in years included in: 2005-01-31,2005-12-31, Time elapsed: 0.561s
INFO CoreAdminHome[2020-04-24 05:17:09 UTC] [3cc20] Archived website id = 1, 3 API requests, Time elapsed: 23.710s [1/1 done]
INFO CoreAdminHome[2020-04-24 05:17:09 UTC] [3cc20] Done archiving!

Brauche noch weitere Ideen !!!
Gruß Alex

So, nach langem hin und her habe ich eine Lösung gefunden - zwar nicht zufriedenstellend, aber immerhin funktioniert sie:

  1. Alle Matomo-Archiv Tabellen LÖSCHEN (leeren hat nicht gereicht)

  2. Leeren der vorhandenen Log-Daten lt. https://matomo.org/faq/how-to/faq_73/

  3. Alte Daten per “InvalidateReports”-PlugIn zurücksetzen (dieser Schritt ist wahrscheinlich unnötig)

  4. Anpassen der Datei “core/CronArchive.php” um einen Datumsbereich in den Aufruf reinzubekommen

     public function __construct($processNewSegmentsFrom = null, LoggerInterface $logger = null)
     {
     ...
     ...
         if (isset($_GET['range']))
             	$this->restrictToDateRange = $_GET['range'];
     }
  1. Importieren der alten Daten in chronologischer Reihenfolge monatsweise, angefangen mit den ältesten - wie gesagt, per eigenem PHP Skript und der Tracking HTTP API mit dem “cdt” Parameter

  2. Archivierungs-Cron ausführen, inkl. Datumsangabe für die zuletzt importierten Daten

     https://MATOMO.URL/misc/cron/archive.php?token_auth=xxxxxxxx&range=2005-01-01,2005-02-01
  1. Die Schritte 5 + 6 für jeden Monat / jedes Jahr wiederholen

  2. Änderungen an der Datei “core/CronArchive.php” rückgängig machen - sonst kommt ein Integritätsfehler :wink:

So wird nach und nach das gesamte Protokoll importiert und die passenden Reports gerendert

Dauert zwar, aber funktioniert

Gruß Alex