Reprocessing the logs

I installed pecl geoip feature, and everything is working now,

I run the script geoipUpdateRows.php in order to regenerate geoip data, and it ended saying:


Now that you've geolocated your old visits, you need to force your reports to be re-processed. See this FAQ entry: http : //piwik.org/faq/how-to/#faq_59

Following faq 59, I deleted (with phpmysql) all the piwik_archive_* tables,

In a few hours I got all the old reports regenerated, but not the weekly reports: In the “Evolution over the period” monthly graph, only the last 2 weeks has been regenerated, while preceeding ones are all at 0; and this despite that daily, monthly and yearly graphs correctly show all the values for all the months (about 19) piwik is collecting data.

The archive log doesn’t show any error.

I tried adding to the file config/config.ini.php the lines


[Debug]
always_archive_data_day=1
always_archive_data_period=1

as explained in faq 59, and navigated to the weeks where I miss the reports, but nothing changed.

Any hint?

I retried everything, same result

Possibly a bug?

Can you try to delete all piwik_archive tables again and try again?

I deleted all piwik_archive_* tables again, and I got the same result as before, as I said above

I’ve found that using the two command switches on the cronjob is a easier way to re-process reports and works every time I use it.

If you put --force-all-websites --force-all-periods in your cronjob line it makes re-processing reports alot easier

I reprocessed data again from the command line:


$  sudo -u www-data /usr/bin/php5 /var/www/piwik/misc/cron/archive.php --url=http://my.server.org/piwik/  --force-all-websites --force-all-periods=10000

and it ran without errors, everything is fine, but in weekly data I cannot get more than 52 weeks: older weekly data are all zero!

change const DEFAULT_DATE_LAST = 52;
to const DEFAULT_DATE_LAST = 520;

in archive.php and try again ?

I’m going to reprocess and see if this trick resolves the issue, but I wonder: why does the archive process about 600 days but only 52 weeks?