Populate Microsoft SQL Server 2012 Replication Computers Group

Microsoft.SQLServer.2012.PopulateSQLServersReplicationGroup (Discovery)

This object discovery populates the SQL Server 2012 Replication Component computer group with all computers that are running an instance of SQL Server 2012 DB Engine and have some replication component configured.

Knowledge Base article:

Summary

This object discovery populates the SQL Server 2012 Replication Component computer group with all computers that are running an instance of SQL Server 2012 DB Engine and have some replication component configured.

Configuration

This discovery is enabled by default.

Element properties:

TargetMicrosoft.SQLServer.2012.ReplicationComputerGroup
EnabledFalse
RemotableFalse

Object Discovery Details:

Discovered Classes and their attribuets:

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.SystemCenter.GroupPopulator Default

Source Code:

<Discovery ID="Microsoft.SQLServer.2012.PopulateSQLServersReplicationGroup" Enabled="false" Target="Microsoft.SQLServer.2012.ReplicationComputerGroup">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Microsoft.SQLServer.2012.ReplicationComputerGroup"/>
</DiscoveryTypes>
<DataSource ID="DS" TypeID="SC!Microsoft.SystemCenter.GroupPopulator">
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$Target/Id$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name="Windows!Microsoft.Windows.Computer"]$</MonitoringClass>
<RelationshipClass>$MPElement[Name="SC!Microsoft.SystemCenter.ComputerGroupContainsComputer"]$</RelationshipClass>
<Expression>
<Contains>
<MonitoringClass>$MPElement[Name="Microsoft.SQLServer.2012.Distributor"]$</MonitoringClass>
</Contains>
</Expression>
</MembershipRule>
<MembershipRule>
<MonitoringClass>$MPElement[Name="Windows!Microsoft.Windows.Computer"]$</MonitoringClass>
<RelationshipClass>$MPElement[Name="SC!Microsoft.SystemCenter.ComputerGroupContainsComputer"]$</RelationshipClass>
<Expression>
<Contains>
<MonitoringClass>$MPElement[Name="Microsoft.SQLServer.2012.Publisher"]$</MonitoringClass>
</Contains>
</Expression>
</MembershipRule>
<MembershipRule>
<MonitoringClass>$MPElement[Name="Windows!Microsoft.Windows.Computer"]$</MonitoringClass>
<RelationshipClass>$MPElement[Name="SC!Microsoft.SystemCenter.ComputerGroupContainsComputer"]$</RelationshipClass>
<Expression>
<Contains>
<MonitoringClass>$MPElement[Name="Microsoft.SQLServer.2012.Subscriber"]$</MonitoringClass>
</Contains>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>