AD DS Printer Publishing: Allow the spooler to retry pruning the printer

Microsoft.Windows.Server.2008.PrintServer.PrintQueue.ADDSPrinterPublishing.System.Allowthespoolertoretrypruningtheprinter.EventBased.UnitMonitor (UnitMonitor)

Allow the spooler to retry pruning the printer.

Knowledge Base article:

Summary

The spooler will periodically try to remove the entry until it succeeds in doing so. Continued failures may indicate an Active Directory Domain Services (AD DS) problem, a basic network problem, or a communication problem between the domain controller and the print server

Resolutions

No user action is required. If the spooler continues to fail when trying to remove the print spooler from AD DS and it is important that the printer is removed from AD DS, try the following actions to resolve the issue:

Fix DNS server problems

To resolve DNS server problems:

For more information about troubleshooting DNS server problems, see the following Microsoft Web sites:

Fix AD DS problems

To resolve Active Directory Domain Services (AD DS) problems, do the following:

If you continue to have AD DS problems, you can try the following actions to further diagnose the problem:

Element properties:

TargetMicrosoft.Windows.Server.2008.PrintServer.Printer
Parent MonitorSystem.Health.AvailabilityState
CategoryStateCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
AD DS Printer Publishing Alert
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.2008.PrintServer.PrintQueue.ADDSPrinterPublishing.System.Allowthespoolertoretrypruningtheprinter.EventBased.UnitMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.Server.2008.PrintServer.Printer" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>StateCollection</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2008.PrintServer.PrintQueue.ADDSPrinterPublishing.System.Allowthespoolertoretrypruningtheprinter.EventBased.UnitMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Negative" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
<OperationalState ID="Success" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>System</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-PrintSpooler</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(51)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="Microsoft.Windows.Server.2008.PrintServer.Printer"]/Caption$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>System</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-PrintSpooler</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(36|38|40|42|46|47|48|49|50)$</Pattern>
</RegExExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>