Microsoft Windows Server DNS Zone NSLookup

Microsoft.Windows.Server.DNS.Zone.NSLookup (UnitMonitor)

Tests the zone on localhost with NSLookup

Knowledge Base article:

Summary

Attempts to query the zone from localhost.

Configuration

Interval Seconds: The interval at which this monitor performs a NSLOOKUP.

Script Timeout Seconds: The total time SCOM will allow the script to run before terminating it.

Query Timeout Seconds: Used for the -timeout option of NSLOOKUP.

Query Type: Used for the -querytype option of NSLOOKUP. Acceptable values are: A, CNAME, PTR, NS, or SOA.

Host Name: The host record to be resolved by NSLOOKUP.

Server: The server to which NSLOOKUP should direct the query.

Accept Non Authoritative: Whether or not SCOM should accept a Non-authoritative response to NSLOOKUP.

Causes

NSLOOKUP failed to resolve the zone name.

Resolutions

Ensure that the zone is started, and that the DNS service is started.

Element properties:

TargetMicrosoft.Windows.Server.DNS.Zone
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.DNS.NSLookup.Monitor
RemotableTrue
AccessibilityPublic
Alert Message
Windows DNS - NSLookup Failed for Zone's NS Record

Zone: {0}
Server: {1}

Warning indicates a failure internal to the monitor.
Critical indicates NSLookup failed.

Please see Health Explorer for details.
RunAsMicrosoft.Windows.Server.DNS.ActionAccount

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.DNS.Zone.NSLookup" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.Server.DNS.Zone" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" RunAs="Microsoft.Windows.Server.DNS.ActionAccount" TypeID="Microsoft.Windows.Server.DNS.NSLookup.Monitor" ConfirmDelivery="true">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.DNS.Zone.NSLookup_AlertMessageResourceID">
<AlertOnState>Warning</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="UIGeneratedOpStateIdebf86afdf7e54ef2ba2e4cb6e459cb34" MonitorTypeStateID="Success" HealthState="Success"/>
<OperationalState ID="UIGeneratedOpStateIda10eb60a16594b7babecb1d6daa959b2" MonitorTypeStateID="InternalScriptError" HealthState="Warning"/>
<OperationalState ID="UIGeneratedOpStateIdd6219920ddd945b59cd46731d932cffe" MonitorTypeStateID="QueryFailure" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>902</IntervalSeconds>
<ScriptTimeoutSeconds>300</ScriptTimeoutSeconds>
<QueryTimeoutSeconds>10</QueryTimeoutSeconds>
<QueryType>NS</QueryType>
<HostName>$Target/Property[Type="Microsoft.Windows.Server.DNS.Zone"]/ZoneName$.</HostName>
<Server>127.0.0.1</Server>
<AcceptNonAuthoritative>true</AcceptNonAuthoritative>
</Configuration>
</UnitMonitor>