AD Time Skew Monitor

Microsoft.Windows.Server.2000.AD.DomainController.TimeSkew.Monitor (UnitMonitor)

Knowledge Base article:

Summary

AD Time Skew Monitor. This monitor generates an alert when the time difference between a domain controller and its time source exceeds a specified threshold.

This means that two domain controller disagree about the current time. If the time skew grows too large, Kerberos authentication can be affected.

Configuration

Element properties:

TargetMicrosoft.Windows.Server.2000.AD.DomainControllerRole
Parent MonitorSystem.Health.ConfigurationState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.2000.AD.DomainController.TimeSkew.Monitortype
RemotableFalse
AccessibilityPublic
Alert Message

The Time Skew latency is above the configured threshold

The Time Skew latency is above the configured threshold. The current value is {0}.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.2000.AD.DomainController.TimeSkew.Monitor" Accessibility="Public" Enabled="onEssentialMonitoring" Target="AD2000Core!Microsoft.Windows.Server.2000.AD.DomainControllerRole" ParentMonitorID="SystemHealth!System.Health.ConfigurationState" Remotable="false" Priority="Normal" TypeID="Microsoft.Windows.Server.2000.AD.DomainController.TimeSkew.Monitortype" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2000.AD.DomainController.TimeSkew.Monitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OK" MonitorTypeStateID="OK" HealthState="Success"/>
<OperationalState ID="Warn" MonitorTypeStateID="Warn" HealthState="Warning"/>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<TimeSource/>
<LogSuccessEvent>false</LogSuccessEvent>
<NumSamples>5</NumSamples>
<WarningThreshold>180</WarningThreshold>
<ErrorThreshold>300</ErrorThreshold>
<TimeoutSeconds>120</TimeoutSeconds>
</Configuration>
</UnitMonitor>