WMI Replication Provider is not installed Replication cannot be monitored fully

WMI_Replication_Provider_is_not_installed_Replication_cannot_be_monitored_fully (Rule)

Knowledge Base article:

Summary

When you use System Center Operations Manager 2007 to monitor Microsoft Windows Server 2003-based domain controller that has the OpsMgr Active Directory Management Pack installed, the OpsMgr Replication health monitoring may fail.

When this problem occurs, the Windows Server 2003-based domain controller reports an error event back to the OpsMgr Management Server, and the following events appear in the Alerts pane of the OpsMgr Operations Console:

The script ‘AD Replication monitoring’ encountered a runtime error. Failed to determine whether the WMI replication provider is installed. The error returned was: ‘Invalid Parameter’ (0x80041008)

AD Remote Topology Discovery cannot determine whether the WMI Replication Provider is installed. The error returned was: ‘Invalid Parameter’ (0x80041008).

Causes

This problem occurs when the Replprov.dll file tries to access a pointer that is not valid. The Replprov.dll file is used by the OpsMgr Active Directory Management Pack to retrieve Active Directory replication-related information, including replication status. When this problem occurs, the Replprov.dll file cannot determine the replication status of the domain controller, and the error messages are generated.

Resolution

A supported hotfix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Only apply it to systems that are experiencing this specific problem. This hotfix may receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next Windows Server 2003 service pack that contains this hotfix.

For details see:

http://support.microsoft.com/kb/889054

External

For details on the WMI Replication Provider in the MOM context see: http://www.microsoft.com/technet/prodtechnol/mom/mom2005/maintain/dirmgmtpackmom_4.mspx

Element properties:

TargetMicrosoft.Windows.Server.2003.AD.DomainControllerRole
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableFalse
Alert Message
WMI Replication Provider is not installed - Replication cannot be monitored fully
{0}
Event LogOperations Manager

Member Modules:

ID Module Type TypeId RunAs 
EventDS DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="WMI_Replication_Provider_is_not_installed_Replication_cannot_be_monitored_fully" Enabled="onStandardMonitoring" Target="AD2003Core!Microsoft.Windows.Server.2003.AD.DomainControllerRole" ConfirmDelivery="false" Remotable="false" Priority="Normal" DiscardLevel="100">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Operations Manager</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>Params/Param[1]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>AD Replication Monitoring</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>^(68)$</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertOwner>$Data/PublisherName$</AlertOwner>
<AlertMessageId>$MPElement[Name="WMI_Replication_Provider_is_not_installed_Replication_cannot_be_monitored_fully.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>