Issues caused by clock skew
Published 14 February 2023
Clock skew alerts are raised when the difference between the clock setting on the computer hosting the SQL Monitor Base Monitor and the monitored SQL Server host machine is greater than 15 seconds. Windows Server uses Windows Time service (W32Time) to maintain accurate date and time synchronization. For more information, see How the Windows Time Service Works.
How clock skew can occur on virtual machines
The hardware clock used by the virtual machine's operating system is based on counting interrupts and ticks from the virtual hardware, which makes it susceptible to clock skew when the virtual machine or its host is under significant load. The techniques used to minimize timing performance differences can still cause inaccuracies and raise clock skew alerts.
How clock skew affects SQL Monitor
It is important to ensure that the machines hosting components of SQL Monitor, and the machines being monitored, have synchronized clock settings. If not, you may experience the issues listed below.
I can't log in to my servers
Windows uses the Kerberos authentication protocol to verify the user requesting authentication and the server providing the requested authentication. The date and time set on the key distribution center (KDC) and on the client making the requests must be synchronized. If there is a significant time difference between the two, authentication can't function properly and you may be prevented from logging in to your servers. For more information, see http://technet.microsoft.com/en-us/library/cc780011(WS.10).aspx.
SQL Monitor pages aren't displayed correctly
If any of the machines hosting components of SQL Monitor are out of sync, certain pages of SQL Monitor may display incorrect time stamps for performance data, or not display data at all. Pages that display details from multiple clocks, including the Global overview page and the Alert details page, are most likely to be affected.
An exception is raised when I click on an alert
If the clock setting on your SQL Server host machine is running ahead of the time set on your SQL Monitor Web Server, alerts will be raised with a timestamp set some time in the future. How far in the future depends on how far out of sync the host machine is. For example, if the monitored machine is ahead by 5 minutes, an alert can be raised with a timestamp of 12:05 even though the time according to the Web Server is 12:00.
SQL Monitor can only support alerts with a timestamp equal to, or earlier than, the Web Server time. If you click on the alert before the Web Server time has reached the alert timestamp (between 12:00 and 12:05 in this example), an exception is raised. If you click on the alert after the Web Server time has reached the alert timestamp, SQL Monitor works as expected.
Do you have any feedback on this documentation?
Let us know at firstname.lastname@example.org