@mattab opened this Issue on May 24th 2010 Owner

See attached screenshot.
I believe this is because the Live! plugin API function loadLastVisitorInLastXTimeFromDatabase is not using the website timezone to process the count of visits 'today'.

see bug report in http://forum.piwik.org/index.php?showtopic=9571

Seems not to be correctly fixed, Bug report from #1555:
Piwik 0.8 - When the setting of UTC is -5, the "Live Visitor!" daily summary stops counting at 19.00 hrs. and sets the values for visits and pageviews to 0 (afer 00.00 hrs. the count starts fresh for the new day and works fine until 19.00 hrs. of that day). All other widgets seem not to be having this problem.

@mattab commented on May 24th 2010 Owner

Attachment:
piwik_live.png

@peterbo commented on July 29th 2010 Contributor

(In [2784]) fixes #1375, #1319

@robocoder commented on August 24th 2010 Contributor
@peterbo commented on August 24th 2010 Contributor

limaeasy, i can't reproduce that. Is your system clock also set to UTC-5?
I tried the following test-case as this is the routine which is running in the Live!-Plugin:

$testDate = "2010-08-24 18:05:00";
$oDate = Piwik_Date::factory($testDate);
$oDate = $oDate->setTimezone("UTC-5");

echo $oDate->getDateStartUTC(); //echos 2010-08-24 05:00:00 in UTC as this is 00:00:00 in UTC-5
// ####

$testDate = "2010-08-24 19:05:00";
$oDate = Piwik_Date::factory($testDate);
$oDate = $oDate->setTimezone("UTC-5");

echo $oDate->getDateStartUTC(); //echos also 2010-08-24 05:00:00

So there should not be a difference between these two times; Can you help me to reproduce the problem?

@peterbo commented on August 24th 2010 Contributor

I was now able to reproduce the error:

If the Date Object is initalized this way:

$oDate = Piwik_Date::factory("now"); //server time 2010-08-24 21:01:00
$oDate = $oDate->setTimezone($sTimezone);
$oDate->getDateStartUTC(); //echos 2010-08-25 05:00:00 (not correct)

If the date object is initialized with a manual date:

$testDate = "2010-08-24 21:01:00";
$oDate = Piwik_Date::factory($testDate);
$oDate = $oDate->setTimezone($sTimezone);
$oDate->getDateStartUTC(); //echos 2010-08-24 05:00:00 (correct)

So it seems to be an error in the Date factory, we will have to investigate further.

UPDATE
This can only be reproduced, when the timezone in php.ini (date.timezone) is different from the timezone that is set for a given page (as expected).
If somebody has this problem, please check your server config and give feedback. I'm not yet sure if this is a bug.

@anonymous-piwik-user commented on August 26th 2010

I've observed an issue which seems to be directly related to this. In fact I've been installing and reinstalling Piwik (latest release 0.9) the whole day because I though it didn't work, until I found out that changing the date range makes the data appear. Here the details.

I've Piwik installed on a server with the following date settings:

date/time support enabled
"Olson" Timezone Database Version 2010.3
Timezone Database internal
Default timezone Europe/Berlin

I've two pages added on Piwik for now, going to add a third one (located in the USA) tonight.

Page #1
date/time support enabled
Timezone Database Version 0.system
Timezone Database internal
Default timezone Europe/Berlin

All date ranges work (or so it seems) and show the total number of visits (only 1 for now)

Page #2
date/time support enabled
"Olson" Timezone Database Version 2010.3
Timezone Database internal
Default timezone Europe/Berlin

All date ranges work, except the "Week" range, it remains at 0, both in the dashboard and "all websites" view. But, and here it the curious thing, I've got Live Visitors Plugin enabled, and that one shows the visits for the present day, even when the other widgets show 0. Also, this webpage is on the same server than Piwik, so I am not sure if it has to do with different time zone settings. Turning off Live Visitors Plugin makes no difference, it still fails in the "Week" range.

I can do some further investigation once I get the third page online and post the results here if requested. Of course I can provide any other data as long as you tell me what exactly you need.

@robocoder commented on August 30th 2010 Contributor

(In [3024]) -fixes #1375

@robocoder commented on August 30th 2010 Contributor

(In [3026]) refs #1375 - similar fix for visitor log

@robocoder commented on October 14th 2010 Contributor

(In [3246]) fixes #1458, refs #1375 - fix timezone issues

@robocoder commented on December 1st 2010 Contributor

(In [3391]) refs #1375 - calculating "last X minutes" vs "last X days" now more similar in implementation

This Issue was closed on December 1st 2010
Powered by GitHub Issue Mirror