Latest Entries »


I cannot claim responsibility for this but I found it to be extremely useful.  Basically a management pack that creates client groups by using the PROCESSOR_ARCHITECTURE key within Windows.  Thanks to Brian at Unidev.  Here’s the original post.

Unfortunately System Center Essentials doesn’t come with computer groups that are based on whether or not Windows is installed as 32-bit or 64-bit.  This would be extremely helpful in pushing software that is targeted for those specific platforms.  Below is the management pack xml I came up with.  You can save this XML as “Platform.Based.Computer.Groups.xml” and import via the console.  It uses the PROCESSOR_ARCHITECTURE registry key to make the determination of a 32-bit vs. 64-bit OS.  This creates 6 groups, 3 sets each split into x86 and x64:  Windows <platform> Computer Group, Windows Client <platform> Computer Group, Windows Server <platform> Computer Group.  To create the management pack by scratch, you can follow this outline:

  1. Create a new attribute for the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE registry key value, targeting Windows Computer, Windows Client, and Windows Server.  Yes this means you create 3 attributes.
  2. Create new groups for each platform.  The rule for the x64 groups is the value of this key must equal “amd64”.  The rule for the x86 groups is this key doesn’t equal “amd64”.  More explanation can be found here (note the management agent/service runs native to the platform).  For the Windows <platform> Group, make sure you use the Windows Computer_Extended class.  For the Windows Client <platform> Computer Group, make sure you use the Windows Client_Extended class.  For the Windows Server <platform> Computer Group, make sure you use the Windows Server_Extended class.
  3. Wait for the agents to set the new attribute.

Here is the Exported Management Pack.  Note this was created using System Center Essentials 2010.  I believe this would work under 2007, but different version numbers would need to be used.

<?xml version=”1.0″ encoding=”utf-8″?><ManagementPack ContentReadable=”true” xmlns:xsd=”http://www.w3.org/2001/XMLSchema” xmlns:xsl=”http://www.w3.org/1999/XSL/Transform”>
<Manifest>
<Identity>
<ID>Platform.Based.Computer.Groups</ID>
<Version>1.0.0.0</Version>
</Identity>
<Name>Platform Based Computer Groups</Name>
<References>
<Reference Alias=”MicrosoftWindowsLibrary6172210″>
<ID>Microsoft.Windows.Library</ID>
<Version>6.1.7221.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”MicrosoftSystemCenterInstanceGroupLibrary6172210″>
<ID>Microsoft.SystemCenter.InstanceGroup.Library</ID>
<Version>6.1.7221.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
<Reference Alias=”SystemCenter”>
<ID>Microsoft.SystemCenter.Library</ID>
<Version>6.1.7221.0</Version>
<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
</Reference>
</References>
</Manifest>
<TypeDefinitions>
<EntityTypes>
<ClassTypes>
<ClassType ID=”Type79bcd4b047114bf38057cccfefc23b3f” Accessibility=”Public” Abstract=”false” Base=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Client.Computer” Hosted=”false” Singleton=”false”>
<Property ID=”AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db” Type=”string” Key=”false” CaseSensitive=”false” Length=”256″ MinLength=”0″ />
</ClassType>
<ClassType ID=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”UINameSpace9c461cdabc464754901456d880b76d42.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”Typec1ddf4898a8c45759b68eb55084f063d” Accessibility=”Public” Abstract=”false” Base=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Server.Computer” Hosted=”false” Singleton=”false”>
<Property ID=”AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4″ Type=”string” Key=”false” CaseSensitive=”false” Length=”256″ MinLength=”0″ />
</ClassType>
<ClassType ID=”Type2259d37e77334b7394a4bdb268a58764″ Accessibility=”Public” Abstract=”false” Base=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer” Hosted=”false” Singleton=”false”>
<Property ID=”AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5″ Type=”string” Key=”false” CaseSensitive=”false” Length=”256″ MinLength=”0″ />
</ClassType>
<ClassType ID=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
<ClassType ID=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group” Accessibility=”Public” Abstract=”false” Base=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroup” Hosted=”false” Singleton=”true” />
</ClassTypes>
</EntityTypes>
</TypeDefinitions>
<Monitoring>
<Discoveries>
<Discovery ID=”AttributeDiscoveryGeneratedByUIcf48023b73e54e8dae3405dd1ff63ae4″ Enabled=”true” Target=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Client.Computer” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>PerformanceCollection</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID=”Type79bcd4b047114bf38057cccfefc23b3f”>
<Property TypeID=”Type79bcd4b047114bf38057cccfefc23b3f” PropertyID=”AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db” />
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID=”AttributeDiscoveryGeneratedByUI538c41746aa249058ff191fc55335053″ TypeID=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.RegistryDiscoverySingleProvider”>
<ComputerName>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/NetworkName$</ComputerName>
<AttributeName>AttributeDiscoveryRule7a8459cae84842f082b2f7da5b2fa27a</AttributeName>
<Path>SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
<Frequency>3600</Frequency>
<ClassId>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]/AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db$</Name>
<Value>$Data/Values/AttributeDiscoveryRule7a8459cae84842f082b2f7da5b2fa27a$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Name>
<Value>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Value>
</Setting>
</Settings>
</InstanceSettings>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]/AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db$</Property>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpace9c461cdabc464754901456d880b76d42.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpace9c461cdabc464754901456d880b76d42.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpace9c461cdabc464754901456d880b76d42.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Type79bcd4b047114bf38057cccfefc23b3f”]/AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db$</Property>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”AttributeDiscoveryGeneratedByUIc35946fd1e9246bb91ff701b971134c9″ Enabled=”true” Target=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Server.Computer” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>PerformanceCollection</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID=”Typec1ddf4898a8c45759b68eb55084f063d”>
<Property TypeID=”Typec1ddf4898a8c45759b68eb55084f063d” PropertyID=”AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4″ />
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID=”AttributeDiscoveryGeneratedByUI553f00ed2fbd4b4d8bf516bad763fa75″ TypeID=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.RegistryDiscoverySingleProvider”>
<ComputerName>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/NetworkName$</ComputerName>
<AttributeName>AttributeDiscoveryRulec017456d384b4bb9860dac5b91dcf8c2</AttributeName>
<Path>SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
<Frequency>3600</Frequency>
<ClassId>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]/AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4$</Name>
<Value>$Data/Values/AttributeDiscoveryRulec017456d384b4bb9860dac5b91dcf8c2$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Name>
<Value>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Value>
</Setting>
</Settings>
</InstanceSettings>
</DataSource>
</Discovery>
<Discovery ID=”AttributeDiscoveryGeneratedByUI4fcdb3368e174252a02253a63dc5373b” Enabled=”true” Target=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>PerformanceCollection</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID=”Type2259d37e77334b7394a4bdb268a58764″>
<Property TypeID=”Type2259d37e77334b7394a4bdb268a58764″ PropertyID=”AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5″ />
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID=”AttributeDiscoveryGeneratedByUI2cc5aaef5b8c4e849fe5af1833a0115f” TypeID=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.RegistryDiscoverySingleProvider”>
<ComputerName>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/NetworkName$</ComputerName>
<AttributeName>AttributeDiscoveryRule95424e49ca10467eb12d4611633759c5</AttributeName>
<Path>SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Path>
<PathType>1</PathType>
<AttributeType>1</AttributeType>
<Frequency>3600</Frequency>
<ClassId>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]/AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5$</Name>
<Value>$Data/Values/AttributeDiscoveryRule95424e49ca10467eb12d4611633759c5$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Name>
<Value>$Target/Property[Type=”MicrosoftWindowsLibrary6172210!Microsoft.Windows.Computer”]/PrincipalName$</Value>
</Setting>
</Settings>
</InstanceSettings>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]/AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4$</Property>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Typec1ddf4898a8c45759b68eb55084f063d”]/AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4$</Property>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]/AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5$</Property>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
<Discovery ID=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group.DiscoveryRule” Enabled=”true” Target=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group” ConfirmDelivery=”false” Remotable=”true” Priority=”Normal”>
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities” />
</DiscoveryTypes>
<DataSource ID=”GroupPopulationDataSource” TypeID=”SystemCenter!Microsoft.SystemCenter.GroupPopulator”>
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$MPElement[Name=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group”]$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]$</MonitoringClass>
<RelationshipClass>$MPElement[Name=”MicrosoftSystemCenterInstanceGroupLibrary6172210!Microsoft.SystemCenter.InstanceGroupContainsEntities”]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name=”Type2259d37e77334b7394a4bdb268a58764″]/AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5$</Property>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>amd64</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
</Discoveries>
</Monitoring>
<Presentation>
<Folders>
<Folder ID=”Folder_3a3150e06af04efc93e10ce2cbdb67a5″ Accessibility=”Public” ParentFolder=”SystemCenter!Microsoft.SystemCenter.Monitoring.ViewFolder.Root” />
</Folders>
</Presentation>
<LanguagePacks>
<LanguagePack ID=”ENU” IsDefault=”false”>
<DisplayStrings>
<DisplayString ElementID=”Platform.Based.Computer.Groups”>
<Name>Platform Based Computer Groups</Name>
</DisplayString>
<DisplayString ElementID=”Folder_3a3150e06af04efc93e10ce2cbdb67a5″>
<Name>Platform Based Computer Groups</Name>
</DisplayString>
<DisplayString ElementID=”AttributeDiscoveryGeneratedByUIcf48023b73e54e8dae3405dd1ff63ae4″>
<Name>Process ArchitectureDiscovery</Name>
</DisplayString>
<DisplayString ElementID=”Type79bcd4b047114bf38057cccfefc23b3f”>
<Name>Windows Client_Extended</Name>
</DisplayString>
<DisplayString ElementID=”Type79bcd4b047114bf38057cccfefc23b3f” SubElementID=”AttributeDiscoveryGeneratedByUI8a18081aa8fd43f5b3b793fe2fd7d6db”>
<Name>Process Architecture</Name>
<Description>Determines 32-bit or 64-bit version of windows based on the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group”>
<Name>Windows Client x86 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpacecb1cfa7fb7b44d699bba170cc1d1e5a8.Group.DiscoveryRule”>
<Name>Populate Windows Client x86 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows Client x86 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpace9c461cdabc464754901456d880b76d42.Group”>
<Name>Windows Client x64 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpace9c461cdabc464754901456d880b76d42.Group.DiscoveryRule”>
<Name>Populate Windows Client x64 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows Client x64 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”AttributeDiscoveryGeneratedByUIc35946fd1e9246bb91ff701b971134c9″>
<Name>Process ArchitectureDiscovery</Name>
</DisplayString>
<DisplayString ElementID=”Typec1ddf4898a8c45759b68eb55084f063d”>
<Name>Windows Server_Extended</Name>
</DisplayString>
<DisplayString ElementID=”Typec1ddf4898a8c45759b68eb55084f063d” SubElementID=”AttributeDiscoveryGeneratedByUI770ab3335bf348469cad1fc8ffa25ba4″>
<Name>Process Architecture</Name>
<Description>Determines 32-bit or 64-bit version of windows based on the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Description>
</DisplayString>
<DisplayString ElementID=”AttributeDiscoveryGeneratedByUI4fcdb3368e174252a02253a63dc5373b”>
<Name>Process ArchitectureDiscovery</Name>
</DisplayString>
<DisplayString ElementID=”Type2259d37e77334b7394a4bdb268a58764″>
<Name>Windows Computer_Extended</Name>
</DisplayString>
<DisplayString ElementID=”Type2259d37e77334b7394a4bdb268a58764″ SubElementID=”AttributeDiscoveryGeneratedByUI55895447f20b4390bc2657c1f92bd2b5″>
<Name>Process Architecture</Name>
<Description>Determines 32-bit or 64-bit version of windows based on the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\PROCESSOR_ARCHITECTURE</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group”>
<Name>Windows Server x86 Computer Group</Name>
<Description />
</DisplayString>
<DisplayString ElementID=”UINameSpaced65a8b5eba8a497a817d94b078aa4764.Group.DiscoveryRule”>
<Name>Populate Windows Server x86 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows Server x86 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group”>
<Name>Windows Server x64 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpacece010ba3a104449096bd2cbbd8257088.Group.DiscoveryRule”>
<Name>Populate Windows Server x64 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows Server x64 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group”>
<Name>Windows x86 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpacef41b5a7897114ccbac3203997fd5f064.Group.DiscoveryRule”>
<Name>Populate Windows x86 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows x86 Computer Group’</Description>
</DisplayString>
<DisplayString ElementID=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group”>
<Name>Windows x64 Computer Group</Name>
</DisplayString>
<DisplayString ElementID=”UINameSpaceb86ace359759416ca46f5aaa1ba33949.Group.DiscoveryRule”>
<Name>Populate Windows x64 Computer Group</Name>
<Description>This discovery rule populates the group ‘Windows x64 Computer Group’</Description>
</DisplayString>
</DisplayStrings>
</LanguagePack>
</LanguagePacks>
</ManagementPack>

Advertisements

Go into authoring and go to monitors.  Scope the list to Windows Servers ( the more I think about it, I may revise this to apply only to dc’s since they’re the ones that notate a computer account creation).

Create a new Unit Monitor the monitor type will be Windows Events->Simple Event Detection-> Timer Reset.  I chose this because I want it to log an alert but not remain in a warning state ( i hate yellow and red marks all over my gui =) )

Leave the management pack at default.

Name the monitor whatever you like, give it a description if you want and the parent monitor I set to Security.  – seems appropriate

Log name is Security

Event ID equals 645 and Event Source equals Security.

Leave the timer default at 15 seconds, again all we want to do is generate an alert, not annoy us to death.

Monitor conditions shouldn’t need to change, it’ll warn when the event is raised and go back to healthy after the timer expires.

The alert settings, you want to check the box to generate an alert, when it’s in a health state, and uncheck automatically resolve the alert, (otherwise it auto-resolves and unless you catch it in the 15 seconds, you won’t know what happened).

Name the alert, priority, severity and description however you want.  you’re done with creating the monitor.

The only thing you have left to do is look at the properties of the monitor, and add a recovery task (the auto-discovery) and you’re done.  You can get some ideas about how the discovery script works by going to Authoring->Tasks and search for discovery  you may have to rescope your search to include Root Management Server, then you’ll see Essential Computer Discovery task and can view the properties to see how it works.


Scenario: you have pc’s reporting in, and when you look at a hardware inventory, your Intel Core 2 Duo pc’s are showing up as PIII Xeon’s (sounds weird but it does happen).

Solution: Contrary to popular belief, this is NOT a SCE problem, but a problem that has been recognized and addressed by Microsoft. The WMI call does exactly what it should however, the processor is incorrectly identified. The hotfix is here. Keep in mind, this is a request-only hotfix, and only effects XP and Server 2003 machines.


Old news, but for the folks who don’t know about it, here it is.