This solution may be useful if you observe time discrepancies such as the Duration status column for a service (incorrectly) showing +364 days or a graph displaying a time that is several hours in the future.
This type of discrepancy may be caused by inconsistent time zone configurations between the OS, database, PHP and the JVM. Verify the time of the OS on the Uptime Infrastructure Monitor Monitoring Station and Database Server.
Login as the Uptime Infrastructure Monitor user and verify the time configuration of the Uptime Infrastructure Monitor database.
On MySQL:
select now()
On SQL Server:
select current_timestamp;
On Oracle:
select current_timestamp() from dual;
To verify the PHP time configuration:
Browse to your /<uptime dir>/GUI directory.
Create a file named time.php with the following content:
<?php echo "current timestamp:" .time(); echo " current time: " .date("F j, Y, g:i a");?>
Save the file and browse to time.php to verify:
http://<impactedhostname>:9999/time.php
If all time zones tested above match your desired time zone and you continue to experience a time discrepancy, the issue is likely with the JVM. To force the JVM to a specific time zone, make the following change to the wrapper.conf (Windows) or uptime.lax (Linux) file:
Append the following values to the additional parameters:
- Java Additional Parameters wrapper.java.additional.1= -Duser.timezone=<time/zone> JVM Time Zone
Where <time/zone> is a standard Java Time Zone value (click here for an alphabetical list).