DNS 2003 Use Shorter Path Monitor

Microsoft.Windows.DNSServer.2003.Monitor.ServerStatus.UseShorterPath (UnitMonitor)

Knowledge Base article:

DNS Server Service Status

The DNS Server service responds to requests from DNS client computers for name resolution services. Domain Name System (DNS) is a protocol that enables a computer to obtain the numeric IP address of another computer by submitting the target computer's name to a DNS server. Problem with the DNS Server service can cause network performance to degrade or even prevent network computers from being able to locate each other.

A file path is too long (Cause)

The path name of a file that is required by the DNS Server service is longer than the DNS server is designed to handle.

Use a shorter file path (Resolution)

The path name of a file is too long. Change the file name or path to shorten it, edit the corresponding key in the Windows registry to reflect the new path name, and then restart the DNS Server service.

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

To change a Domain Name System (DNS) path name in the Windows registry:

Caution: Incorrectly editing the registry might severely damage your system. Before making changes to the registry, you should back up any valued data.

  1. On the DNS server, click Start.
  2. In Start Search, type regedit, and then press ENTER.
  3. Expand the following key in the registry: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DNS Server
  4. Browse to and double-click the key that contains the indicated file name.
  5. Type a new name, and then click OK.
  6. Click Start, and then click Server Manager.
  7. Expand Roles, and then click DNS Server.
  8. In the details pane, click Restart.

Element properties:

TargetMicrosoft.Windows.DNSServer.2003.Server
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityInternal
Alert Message
DNS 2003 Use Shorter Path Alert
{0}
RunAsMicrosoft.Windows.DNSServer.Library.ActionAccount

Source Code:

<UnitMonitor ID="Microsoft.Windows.DNSServer.2003.Monitor.ServerStatus.UseShorterPath" Accessibility="Internal" Enabled="onEssentialMonitoring" Target="Microsoft.Windows.DNSServer.2003.Server" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" RunAs="DNS!Microsoft.Windows.DNSServer.Library.ActionAccount" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.DNSServer.2003.Monitor.ServerStatus.UseShorterPath_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="FirstEventRaised" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
<OperationalState ID="SecondEventRaised" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>DNS Server</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1008</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">DNS</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>DNS Server</SecondLogName>
<SecondExpression>
<And>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(2|4)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">DNS</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>