One or more domain controllers may not be replicating

One_or_more_domain_controllers_may_not_be_replicating_For_2000 (Rule)

Knowledge Base article:

Summary

The AD Replication Monitoring monitor has determined that replication is occurring successfully, but it is occurring more slowly than expected.

Either the replication topology design expects changes to replicate more slowly than the threshold for this alert or the replication topology needs to be redesigned.

Resolutions

Determine the expected worst-case, end-to-end replication latency for the entire forest. If necessary, adjust the script parameters to reflect this value.

If the threshold is set correctly, either something has failed in the replication path (other associated alerts identifying the problem will also have been generated) or the replication design as implemented in the configuration container will not achieve the desired replication speed and needs to be reconfigured.

Note: This alert directly affects how long password resets take to arrive at all domain controllers.

Element properties:

TargetMicrosoft.Windows.Server.2008.AD.DomainControllerRole
CategoryCustom
EnabledTrue
Alert GenerateFalse
RemotableFalse

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource AD_Replication_Monitoring.DataSource Default
FilterStatePropertyBag ConditionDetection System.ExpressionFilter Default
WA WriteAction System.Health.GenerateAlertForType Default

Source Code:

<Rule ID="One_or_more_domain_controllers_may_not_be_replicating_For_2000" Enabled="onStandardMonitoring" Target="AD2008Core!Microsoft.Windows.Server.2008.AD.DomainControllerRole" ConfirmDelivery="false" Remotable="false" Priority="Normal" DiscardLevel="100">
<Category>Custom</Category>
<DataSources>
<DataSource ID="DS" TypeID="AD_Replication_Monitoring.DataSource">
<IntervalSeconds>900</IntervalSeconds>
<TargetComputerFQDNName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</TargetComputerFQDNName>
<TargetComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetbiosComputerName$</TargetComputerName>
<TargetFQDN>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/DNSName$</TargetFQDN>
<LogSuccessEvent>false</LogSuccessEvent>
<ObjectUpdateThreshold>24</ObjectUpdateThreshold>
<IntersiteExpectedMaxLatency>15</IntersiteExpectedMaxLatency>
<IntrasiteExpectedMaxLatency>5</IntrasiteExpectedMaxLatency>
<ChangeInjectionFrequency>6</ChangeInjectionFrequency>
<MonitorDomainNC>true</MonitorDomainNC>
<MonitorConfigNC>false</MonitorConfigNC>
<MonitorApplicationPartitions>true</MonitorApplicationPartitions>
<FirstReplicationPeriod>24</FirstReplicationPeriod>
<ManagementGroupName>$Target/ManagementGroup/Id$</ManagementGroupName>
<TimeoutSeconds>300</TimeoutSeconds>
</DataSource>
</DataSources>
<ConditionDetection ID="FilterStatePropertyBag" TypeID="System!System.ExpressionFilter">
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>ConversionType</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>Alert</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>Property[@Name='Bucket']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>update</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>Property[@Name='Type']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>5.0</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</ConditionDetection>
<WriteActions>
<WriteAction ID="WA" TypeID="SystemHealth!System.Health.GenerateAlertForType">
<Priority>1</Priority>
<Severity>1</Severity>
<ManagedEntityTypeId>$MPElement[Name="AD2000Core!Microsoft.Windows.Server.2000.AD.DomainControllerRole"]$</ManagedEntityTypeId>
<KeyProperties>
<KeyProperty>
<PropertyId>$MPElement[Name="Windows!Microsoft.Windows.Computer"]/PrincipalName$</PropertyId>
<IsCaseSensitive>false</IsCaseSensitive>
<Value>$Data/Property[@Name='FQDN']$</Value>
</KeyProperty>
<KeyProperty>
<PropertyId>$MPElement[Name="AD!Microsoft.Windows.Server.AD.DomainControllerRole"]/Name$</PropertyId>
<IsCaseSensitive>false</IsCaseSensitive>
<Value>$Data/Property[@Name='CN']$</Value>
</KeyProperty>
</KeyProperties>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Active_Directory_Latency_Alert_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/Property[@Name='FQDN']$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/Property[@Name='FQDN']$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>