Windows 2012 R2 DNS SEC - Name Resolution Queries Monitor

Microsoft.Windows.Server.DNS.2012R2.Monitor.DNSSEC.NameResolutionQueries (UnitMonitor)

This monitor checks the performance data for Name Resolution Queries in Windows Server 2012 R2 computer.

Knowledge Base article:

Summary

This monitor checks Name Resolution Queries Errors of Zones in Windows Server 2012 R2 computers using a powershell commandlet

Configuration

Warning Query Failure Threshold: Number of Minimum Query Failure errors before change state to Warning.

Error Query Failure Threshold: Number of Maximum Query Failure errors before change state to Error.

Warning Query Name Failure Threshold: Number of Minimum Query Name errors before change state to Warning.

Error Query Name Failure Threshold: Number of Maximum Query Name errors before change state to Error.

Interval Seconds: How frequently (in seconds) the value should be checked.

Sync Time: Synchronization time for the module execution.

Timeout Seconds: How much time (in seconds) to wait for the module to finish execution.

Causes

Error State: Query Failure greater than Error Query Failure Threshold Or Query Name Error greater than Error Query Name Threshold

Warning State: Query Failure greater than Warning Query Failure Threshold AND Query Failure less than Error Query Failure Threshold Or Query Name Error greater than Warning Query Name Threshold and Query Name Error less than Error Query Name Threshold

Success State: QueryReceived = QueriesResponded and Query Failure less or equal Warning Query Failure Threshold AND Query Name Error less or equal to Warning Query Name Threshold

Resolutions

Check the status of the zone to see if it is on line using the DNS management tool.

Element properties:

TargetMicrosoft.Windows.Server.DNS.Zone
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.DNS.2012.R2.NameResolutionQueries.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Windows 2012 R2 DNS SEC - Zone Name Resolution Queries Errors are high
Zone {0} in Server {1} got Name Resolution Queries Errors greater than defined Threshold.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.DNS.2012R2.Monitor.DNSSEC.NameResolutionQueries" Accessibility="Public" Enabled="false" Target="Microsoft.Windows.Server.DNS.Zone" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.Server.DNS.2012.R2.NameResolutionQueries.MonitorType" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.DNS.2012R2.Monitor.DNSSEC.NameResolutionQueries.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="Microsoft.Windows.Server.DNS.Zone"]/ZoneName$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ErrorState" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="WarningState" MonitorTypeStateID="Warning" HealthState="Warning"/>
<OperationalState ID="SuccessState" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<ZoneName>$Target/Property[Type="Microsoft.Windows.Server.DNS.Zone"]/ZoneName$</ZoneName>
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<WarningQueryFailureThreshold>0</WarningQueryFailureThreshold>
<ErrorQueryFailureThreshold>10</ErrorQueryFailureThreshold>
<WarningQueryNameFailureThreshold>0</WarningQueryNameFailureThreshold>
<ErrorQueryNameFailureThreshold>10</ErrorQueryNameFailureThreshold>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>