SCOM Management Agent Class Discovery

SCOM.Management.Agent.Class.Discovery (Discovery)

Element properties:

TargetMicrosoft.SystemCenter.Agent
EnabledTrue
Frequency43195
RemotableFalse

Object Discovery Details:

Discovered Classes and their attribuets:

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.FilteredRegistryDiscoveryProvider Default

Source Code:

<Discovery ID="SCOM.Management.Agent.Class.Discovery" Enabled="true" Target="SC!Microsoft.SystemCenter.Agent" ConfirmDelivery="false" Remotable="true" Priority="Normal">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="SCOM.Management.Agent.Class">
<Property PropertyID="PSInstalled"/>
<Property PropertyID="Architecture"/>
<Property PropertyID="OSName"/>
<Property PropertyID="APMInstalled"/>
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.FilteredRegistryDiscoveryProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<RegistryAttributeDefinitions>
<RegistryAttributeDefinition>
<AttributeName>AgentRegKeyExists</AttributeName>
<Path>SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\Agent Management Groups</Path>
<PathType>0</PathType>
<!-- 0=regKey 1=regValue -->
<AttributeType>0</AttributeType>
<!-- 0=CheckIfExists (Boolean) 1=treat data as (String) 2=treat data as (Integer) -->
</RegistryAttributeDefinition>
<RegistryAttributeDefinition>
<AttributeName>PSInstalled</AttributeName>
<Path>SOFTWARE\Microsoft\PowerShell</Path>
<PathType>0</PathType>
<!-- 0=regKey 1=regValue -->
<AttributeType>0</AttributeType>
<!-- 0=CheckIfExists (Boolean) 1=treat data as (String) 2=treat data as (Integer) -->
</RegistryAttributeDefinition>
<RegistryAttributeDefinition>
<AttributeName>Architecture</AttributeName>
<Path>SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Path>
<PathType>1</PathType>
<!-- 0=regKey 1=regValue -->
<AttributeType>1</AttributeType>
<!-- 0=CheckIfExists (Boolean) 1=treat data as (String) 2=treat data as (Integer) -->
</RegistryAttributeDefinition>
<RegistryAttributeDefinition>
<AttributeName>OSName</AttributeName>
<Path>SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductName</Path>
<PathType>1</PathType>
<!-- 0=regKey 1=regValue -->
<AttributeType>1</AttributeType>
<!-- 0=CheckIfExists (Boolean) 1=treat data as (String) 2=treat data as (Integer) -->
</RegistryAttributeDefinition>
<RegistryAttributeDefinition>
<AttributeName>APMInstalled</AttributeName>
<Path>SYSTEM\CurrentControlSet\Services\System Center Management APM</Path>
<PathType>0</PathType>
<!-- 0=regKey 1=regValue -->
<AttributeType>0</AttributeType>
<!-- 0=CheckIfExists (Boolean) 1=treat data as (String) 2=treat data as (Integer) -->
</RegistryAttributeDefinition>
</RegistryAttributeDefinitions>
<Frequency>43195</Frequency>
<ClassId>$MPElement[Name="SCOM.Management.Agent.Class"]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Name>
<Value>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="System!System.Entity"]/DisplayName$</Name>
<Value>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="SCOM.Management.Agent.Class"]/PSInstalled$</Name>
<Value>$Data/Values/PSInstalled$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="SCOM.Management.Agent.Class"]/Architecture$</Name>
<Value>$Data/Values/Architecture$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="SCOM.Management.Agent.Class"]/OSName$</Name>
<Value>$Data/Values/OSName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="SCOM.Management.Agent.Class"]/APMInstalled$</Name>
<Value>$Data/Values/APMInstalled$</Value>
</Setting>
</Settings>
</InstanceSettings>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Boolean">Values/AgentRegKeyExists</XPathQuery>
<!-- Common options for XPathQuery Type are "Boolean" "String" "Integer" "Double" -->
</ValueExpression>
<Operator>Equal</Operator>
<!-- Common options for SimpleExpression Operator are "Equal" "NotEqual" "Greater" "Less" "GreaterEqual" "LessEqual" "Like" "NotLike" -->
<ValueExpression>
<Value Type="Boolean">true</Value>
<!-- Common options for XPathQuery Type are "Boolean" "String" "Integer" "Double" -->
</ValueExpression>
</SimpleExpression>
</Expression>
</DataSource>
</Discovery>