Cisco.Imc.TemplateCisco IMC

Cisco.Imc.Template (Template)

This template allows you to monitor Cisco IMC Servers.

Source Code:

<Template ID="Cisco.Imc.Template">
<Configuration>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="TypeId" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="LocaleId" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="GroupName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Description" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ScanMode" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="NoSsl" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="IpAddressRange" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ExcludeIpList" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ServerName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="WebProxyUrl" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Ampersand" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="PortNumber" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ProxyUrl" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ProxyUserName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ProxyPassword" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="MachineType" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="RunAsAccountName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="AssocRunAsAccount" type="xsd:string"/>
</Configuration>
<References>
<Reference ID="GroupLibrary"/>
<Reference ID="SCLibrary"/>
<Reference ID="CUL"/>
<Reference ID="Windows"/>
<Reference ID="Health"/>
<Reference ID="System"/>
<Reference ID="Self"/>
<Reference ID="CUW"/>
</References>
<Implementation>
<TypeDefinitions>
<EntityTypes>
<ClassTypes>
<ClassType ID="Cisco.Imc.$TemplateConfig/TypeId$.Server" Accessibility="Public" Abstract="false" Base="CUL!Cisco.Imc.Server" Hosted="true" Singleton="false"/>
<ClassType ID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup" Accessibility="Public" Abstract="false" Base="CUL!Cisco.Imc.ServerGroup" Hosted="true" Singleton="false"/>
<ClassType ID="Cisco.Imc.$TemplateConfig/TypeId$.Seed" Accessibility="Public" Abstract="false" Base="CUL!Cisco.Ucs.Seed" Hosted="false" Singleton="false"/>
<ClassType ID="Cisco.Imc.$TemplateConfig/TypeId$.Group" Accessibility="Public" Abstract="false" Base="CUL!Cisco.Imc.Group" Hosted="false" Singleton="true"/>
</ClassTypes>
<RelationshipTypes>
<RelationshipType ID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroupHostsServer" Accessibility="Public" Abstract="false" Base="$Reference/System$System.Hosting">
<Source>Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup</Source>
<Target>Cisco.Imc.$TemplateConfig/TypeId$.Server</Target>
</RelationshipType>
<RelationshipType ID="Cisco.Imc.$TemplateConfig/TypeId$.SeedHostsServerGroup" Accessibility="Public" Abstract="false" Base="$Reference/System$System.Hosting">
<Source>Cisco.Imc.$TemplateConfig/TypeId$.Seed</Source>
<Target>Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup</Target>
</RelationshipType>
<RelationshipType ID="Cisco.Imc.$TemplateConfig/TypeId$.MonitoringServiceRefersSeed" Accessibility="Public" Abstract="false" Base="$Reference/System$System.Reference">
<Source>CUW!Cisco.Ucs.Watcher.Service</Source>
<Target>Cisco.Imc.$TemplateConfig/TypeId$.Seed</Target>
</RelationshipType>
</RelationshipTypes>
</EntityTypes>
<SecureReferences>
<SecureReference ID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.SecureReference" Accessibility="Public" Context="CUL!Cisco.Ucs.Object"/>
</SecureReferences>
<ModuleTypes>
<DataSourceModuleType ID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.DataSource" Accessibility="Public" Batching="false">
<Configuration>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="TypeId" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="GroupName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Description" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="CacheClass" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ClassId" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="IntervalSeconds" type="xsd:integer"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="LogingLevel" type="xsd:integer"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="SecureInput" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="TimeoutSeconds" type="xsd:integer"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="UserName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ScanMode" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="NoSsl" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="PortNumber" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ProxyUrl" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ProxyUserName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ProxyPassword" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="IpAddressRange" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ExcludeIpList" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="ServerName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="WebProxyUrl" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="MachineType" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="RunAsAccountName" type="xsd:string"/>
<xsd:element xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="AssocRunAsAccount" type="xsd:string"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="IntervalSeconds" Selector="$Config/IntervalSeconds$" ParameterType="int"/>
<OverrideableParameter ID="LogingLevel" Selector="$Config/LogingLevel$" ParameterType="int"/>
<OverrideableParameter ID="TimeoutSeconds" Selector="$Config/TimeoutSeconds$" ParameterType="int"/>
</OverrideableParameters>
<ModuleImplementation Isolation="Any">
<Composite>
<MemberModules>
<DataSource ID="DataSource" TypeID="CUL!Cisco.Imc.ServerGroup.DataSource">
<TypeId>$Config/TypeId$</TypeId>
<GroupName>$Config/GroupName$</GroupName>
<ClassId>$Config/ClassId$</ClassId>
<CacheClass>$Config/CacheClass$</CacheClass>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Seed"]/MachineName$</Name>
<Value>$Target/Property[Type="CUL!Cisco.Ucs.Seed"]/MachineName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.ServerGroup"]/Id$</Name>
<Value>$Config/GroupName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/TypeId$</Name>
<Value>$Config/TypeId$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/Description$</Name>
<Value>$Config/Description$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/MonitoringServer$</Name>
<Value>$Config/ServerName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/WebProxyUrl$</Name>
<Value>$Config/WebProxyUrl$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/ClassName$</Name>
<Value>Server Group</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="System!System.Entity"]/DisplayName$</Name>
<Value>$Config/GroupName$</Value>
</Setting>
</Settings>
</InstanceSettings>
<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>
<LogingLevel>$Config/LogingLevel$</LogingLevel>
<SecureInput>$Config/SecureInput$</SecureInput>
<TimeoutSeconds>$Config/TimeoutSeconds$</TimeoutSeconds>
<UserName>$Config/UserName$</UserName>
<ScanMode>$Config/ScanMode$</ScanMode>
<NoSsl>$Config/NoSsl$</NoSsl>
<PortNumber>$Config/PortNumber$</PortNumber>
<ProxyUrl>$Config/ProxyUrl$</ProxyUrl>
<ProxyUserName>$Config/ProxyUserName$</ProxyUserName>
<ProxyPassword>$Config/ProxyPassword$</ProxyPassword>
<IpAddressRange>$Config/IpAddressRange$</IpAddressRange>
<ExcludeIpList>$Config/ExcludeIpList$</ExcludeIpList>
<ServiceMachine>$Config/ServerName$</ServiceMachine>
<WebProxyUrl>$Config/WebProxyUrl$</WebProxyUrl>
</DataSource>
</MemberModules>
<Composition>
<Node ID="DataSource"/>
</Composition>
</Composite>
</ModuleImplementation>
<OutputType>$Reference/System$System.Discovery.Data</OutputType>
</DataSourceModuleType>
</ModuleTypes>
</TypeDefinitions>
<Monitoring>
<Discoveries>
<Discovery ID="Cisco.Imc.$TemplateConfig/TypeId$.Server.Discovery" Enabled="true" Target="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup" ConfirmDelivery="true" Remotable="true" Priority="Normal">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Cisco.Imc.$TemplateConfig/TypeId$.Server">
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="AvailableMemory"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="FirmwareVersion"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="Id"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="IPAddress"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="MemorySpeed"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="Name"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="NmOfAdaptor"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="NmOfCore"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="NmOfCpus"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="NmOfCoresEnabled"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="NmOfCpus"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="NmOfEthHostIfs"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="NmOfFcHostIfs"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="NmOfThread"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="OperPower"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="OriginalUuid"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="Presence"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="TotalMemory"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="UserLabel"/>
<Property TypeID="CUL!Cisco.Imc.Server" PropertyID="UUID"/>
<Property TypeID="CUL!Cisco.Ucs.Device" PropertyID="Model"/>
<Property TypeID="CUL!Cisco.Ucs.Device" PropertyID="SerialNumber"/>
<Property TypeID="CUL!Cisco.Ucs.Device" PropertyID="Vendor"/>
<Property TypeID="CUL!Cisco.Ucs.Entity" PropertyID="Moniker"/>
<Property TypeID="CUL!Cisco.Ucs.Entity" PropertyID="ModifiedMoniker"/>
<Property TypeID="CUL!Cisco.Ucs.Object" PropertyID="Description"/>
<Property TypeID="CUL!Cisco.Ucs.Object" PropertyID="TypeId"/>
<Property TypeID="System!System.Entity" PropertyID="DisplayName"/>
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID="DataSource" TypeID="CUL!Cisco.Imc.Server.DataSource">
<ClassId>$MPElement[Name="Cisco.Imc.$TemplateConfig/TypeId$.Server"]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Seed"]/MachineName$</Name>
<Value>$Target/Host/Property[Type="CUL!Cisco.Ucs.Seed"]/MachineName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.ServerGroup"]/Id$</Name>
<Value>$Target/Property[Type="CUL!Cisco.Imc.ServerGroup"]/Id$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/TypeId$</Name>
<Value>$TemplateConfig/TypeId$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/IPAddress$</Name>
<Value>$Data/Property[@Name='IPAddress']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/UUID$</Name>
<Value>$Data/Property[@Name='UUID']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/AvailableMemory$</Name>
<Value>$Data/Property[@Name='AvailableMemory']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/UserLabel$</Name>
<Value>$Data/Property[@Name='UserLabel']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/FirmwareVersion$</Name>
<Value>$Data/Property[@Name='FirmwareVersion']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/Id$</Name>
<Value>$Data/Property[@Name='Id']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/MemorySpeed$</Name>
<Value>$Data/Property[@Name='MemorySpeed']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/Name$</Name>
<Value>$Data/Property[@Name='Name']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/NmOfAdaptor$</Name>
<Value>$Data/Property[@Name='NmOfAdaptor']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/NmOfCore$</Name>
<Value>$Data/Property[@Name='NmOfCore']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/NmOfCoresEnabled$</Name>
<Value>$Data/Property[@Name='NmOfCoresEnabled']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/NmOfCpus$</Name>
<Value>$Data/Property[@Name='NmOfCpus']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/NmOfEthHostIfs$</Name>
<Value>$Data/Property[@Name='NmOfEthHostIfs']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/NmOfFcHostIfs$</Name>
<Value>$Data/Property[@Name='NmOfFcHostIfs']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/NmOfThread$</Name>
<Value>$Data/Property[@Name='NmOfThread']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/OperPower$</Name>
<Value>$Data/Property[@Name='OperPower']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/OriginalUuid$</Name>
<Value>$Data/Property[@Name='OriginalUuid']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/Presence$</Name>
<Value>$Data/Property[@Name='Presence']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/TotalMemory$</Name>
<Value>$Data/Property[@Name='TotalMemory']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/UserLabel$</Name>
<Value>$Data/Property[@Name='UserLabel']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Imc.Server"]/GroupName$</Name>
<Value>$TemplateConfig/GroupName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Device"]/Model$</Name>
<Value>$Data/Property[@Name='Model']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Device"]/SerialNumber$</Name>
<Value>$Data/Property[@Name='SerialNumber']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Device"]/Vendor$</Name>
<Value>$Data/Property[@Name='Vendor']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Entity"]/Moniker$</Name>
<Value>$Data/Property[@Name='Moniker']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Entity"]/ModifiedMoniker$</Name>
<Value>$Data/Property[@Name='ModifiedMoniker']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/Description$</Name>
<Value>$Data/Property[@Name='Description']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/WebProxyUrl$</Name>
<Value>$TemplateConfig/WebProxyUrl$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/MonitoringServer$</Name>
<Value>$TemplateConfig/ServerName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="CUL!Cisco.Ucs.Object"]/ClassName$</Name>
<Value>Server</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="System!System.Entity"]/DisplayName$</Name>
<Value>$Data/Property[@Name='DisplayName']$</Value>
</Setting>
</Settings>
</InstanceSettings>
<IntervalSeconds>21600</IntervalSeconds>
<LogingLevel>0</LogingLevel>
<SecureInput>$RunAs[Name="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.SecureReference"]/Password$</SecureInput>
<TimeoutSeconds>660</TimeoutSeconds>
<TypeId>$TemplateConfig/TypeId$</TypeId>
<UserName>$RunAs[Name="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.SecureReference"]/UserName$</UserName>
<WebProxyUrl>$TemplateConfig/WebProxyUrl$</WebProxyUrl>
</DataSource>
</Discovery>
<Discovery ID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.Discovery" Enabled="true" Target="Cisco.Imc.$TemplateConfig/TypeId$.Seed" ConfirmDelivery="true" Remotable="true" Priority="Normal">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup">
<Property TypeID="CUL!Cisco.Imc.ServerGroup" PropertyID="Id"/>
<Property TypeID="CUL!Cisco.Ucs.Object" PropertyID="TypeId"/>
<Property TypeID="CUL!Cisco.Ucs.Object" PropertyID="MonitoringServer"/>
<Property TypeID="CUL!Cisco.Ucs.Object" PropertyID="Description"/>
<Property TypeID="System!System.Entity" PropertyID="DisplayName"/>
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID="DataSource" TypeID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.DataSource">
<TypeId>$TemplateConfig/TypeId$</TypeId>
<GroupName>$TemplateConfig/GroupName$</GroupName>
<Description>$TemplateConfig/Description$</Description>
<CacheClass>topSystem computeRackUnit</CacheClass>
<ClassId>$MPElement[Name="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup"]$</ClassId>
<IntervalSeconds>14400</IntervalSeconds>
<LogingLevel>0</LogingLevel>
<SecureInput>$RunAs[Name="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.SecureReference"]/Password$</SecureInput>
<TimeoutSeconds>660</TimeoutSeconds>
<UserName>$RunAs[Name="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.SecureReference"]/UserName$</UserName>
<ScanMode>$TemplateConfig/ScanMode$</ScanMode>
<NoSsl>$TemplateConfig/NoSsl$</NoSsl>
<PortNumber>$TemplateConfig/PortNumber$</PortNumber>
<ProxyUrl>$TemplateConfig/ProxyUrl$</ProxyUrl>
<ProxyUserName>$TemplateConfig/ProxyUserName$</ProxyUserName>
<ProxyPassword>$TemplateConfig/ProxyPassword$</ProxyPassword>
<IpAddressRange>$TemplateConfig/IpAddressRange$</IpAddressRange>
<ExcludeIpList>$TemplateConfig/ExcludeIpList$</ExcludeIpList>
<ServerName>$TemplateConfig/ServerName$</ServerName>
<WebProxyUrl>$TemplateConfig/WebProxyUrl$</WebProxyUrl>
<MachineType>$TemplateConfig/MachineType$</MachineType>
<RunAsAccountName>$TemplateConfig/RunAsAccountName$</RunAsAccountName>
<AssocRunAsAccount>$TemplateConfig/AssocRunAsAccount$</AssocRunAsAccount>
</DataSource>
</Discovery>
<Discovery ID="Cisco.Imc.$TemplateConfig/TypeId$.Seed.Discovery" Enabled="true" Target="CUW!Cisco.Ucs.Watcher.Service" ConfirmDelivery="false" Remotable="true" Priority="Normal">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Cisco.Imc.$TemplateConfig/TypeId$.Seed">
<Property TypeID="CUL!Cisco.Ucs.Seed" PropertyID="MachineName"/>
<Property TypeID="CUL!Cisco.Ucs.Seed" PropertyID="ServiceName"/>
<Property TypeID="System!System.Entity" PropertyID="DisplayName"/>
</DiscoveryClass>
</DiscoveryTypes>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.TimedScript.DiscoveryProvider">
<IntervalSeconds>3600</IntervalSeconds>
<SyncTime/>
<ScriptName>Cisco.Imc.Seed.Discovery.vbs</ScriptName>
<Arguments>$MPElement$ $Target/Id$ $TemplateConfig/ServerName$ $Target/Host/Property[Type="$Reference/Windows$Microsoft.Windows.Computer"]/PrincipalName$ $Target/Property[Type="CUW!Cisco.Ucs.Watcher.Service"]/ServiceName$ $Target/Property[Type="CUW!Cisco.Ucs.Watcher.Service"]/Description$ $Target/Property[Type="CUW!Cisco.Ucs.Watcher.Service"]/DisplayName$ $Target/Property[Type="CUW!Cisco.Ucs.Watcher.Service"]/ServiceProcessName$</Arguments>
<ScriptBody><Script>'==================================================================================
'Setup variables sent in through script arguments
SourceId = WScript.Arguments(0)
ManagedEntityId = WScript.Arguments(1)
sServerName = WScript.Arguments(2)
sPrincipalName = WScript.Arguments(3)
sServiceName = WScript.Arguments(4)
sDescription = WScript.Arguments(5)
sDisplayName = WScript.Arguments(6)
sServiceProcessName = WScript.Arguments(7)

Set oAPI = CreateObject("MOM.ScriptAPI")
Set oDiscoveryData = oAPI.CreateDiscoveryData(0, SourceId, ManagedEntityId)
intCompare = StrComp(sServerName, sPrincipalName, vbTextCompare)
If intCompare = 0 Then

Set oSeedInstance = oDiscoveryData.CreateClassInstance("$MPElement[Name='Cisco.Imc.$TemplateConfig/TypeId$.Seed']$")
oSeedInstance.AddProperty "$MPElement[Name='$Reference/System$System.Entity']/DisplayName$", "Cisco Imc Seed"
oSeedInstance.AddProperty "$MPElement[Name='$Reference/CUL$Cisco.Ucs.Seed']/MachineName$", sPrincipalName
oSeedInstance.AddProperty "$MPElement[Name='$Reference/CUL$Cisco.Ucs.Seed']/ServiceName$", sServiceName
oDiscoveryData.AddInstance(oSeedInstance)

'Create an instance of the health service class
Set oHealthServiceInstance = oDiscoveryData.CreateClassInstance( "$MPElement[Name='$Reference/SCLibrary$Microsoft.SystemCenter.HealthService']$" )
oHealthServiceInstance.AddProperty "$MPElement[Name='$Reference/Windows$Microsoft.Windows.Computer']/PrincipalName$", sServerName
oDiscoveryData.AddInstance oHealthServiceInstance

'Create the relationship and add to the discovery data
set oShouldManageInstance = oDiscoveryData.CreateRelationshipInstance("$MPElement[Name='$Reference/SCLibrary$Microsoft.SystemCenter.HealthServiceShouldManageEntity']$")
oShouldManageInstance.Source = oHealthServiceInstance
oShouldManageInstance.Target = oSeedInstance
oDiscoveryData.AddInstance oShouldManageInstance

'Create the containment relationship

'Create an instance of the ManagementService class
Set oMonitoringServerInstance = oDiscoveryData.CreateClassInstance("$MPElement[Name='$Reference/CUW$Cisco.Ucs.Watcher.Service']$" )
oMonitoringServerInstance.AddProperty "$MPElement[Name='$Reference/Windows$Microsoft.Windows.Computer']/PrincipalName$", sPrincipalName
oMonitoringServerInstance.AddProperty "$MPElement[Name='$Reference/CUW$Cisco.Ucs.Watcher.Service']/ServiceName$", sServiceName

Set oRelationshipInstance = oDiscoveryData.CreateRelationshipInstance("$MPElement[Name='Cisco.Imc.$TemplateConfig/TypeId$.MonitoringServiceRefersSeed']$")
oRelationshipInstance.Source = oMonitoringServerInstance
oRelationshipInstance.Target = oSeedInstance
oDiscoveryData.AddInstance oRelationshipInstance

End If

'Return the discovery data
oAPI.Return(oDiscoveryData)</Script></ScriptBody>
<TimeoutSeconds>660</TimeoutSeconds>
</DataSource>
</Discovery>
<Discovery ID="Cisco.Imc.$TemplateConfig/TypeId$.Group.Discovery" Enabled="true" Target="Cisco.Imc.$TemplateConfig/TypeId$.Group" ConfirmDelivery="true" Remotable="true" Priority="Normal">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryRelationship TypeID="GroupLibrary!Microsoft.SystemCenter.InstanceGroupContainsEntities"/>
</DiscoveryTypes>
<DataSource ID="GroupPopulator" TypeID="$Reference/SCLibrary$Microsoft.SystemCenter.GroupPopulator">
<RuleId>$MPElement$</RuleId>
<GroupInstanceId>$Target/Id$</GroupInstanceId>
<MembershipRules>
<MembershipRule>
<MonitoringClass>$MPElement[Name="CUL!Cisco.Imc.Server"]$</MonitoringClass>
<RelationshipClass>$MPElement[Name="GroupLibrary!Microsoft.SystemCenter.InstanceGroupContainsEntities"]$</RelationshipClass>
<Expression>
<SimpleExpression>
<ValueExpression>
<Property>$MPElement[Name="CUL!Cisco.Ucs.Object"]/TypeId$</Property>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$TemplateConfig/TypeId$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</MembershipRule>
</MembershipRules>
</DataSource>
</Discovery>
</Discoveries>
<Rules>
<!--<Rule ID="Cisco.Imc.$TemplateConfig/TypeId$.Update.Rule" Enabled="true" Target="$Reference/SCLibrary$Microsoft.SystemCenter.RootManagementServer" ConfirmDelivery="false" Priority="Normal">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$TemplateConfig/ServerName$</ComputerName>
<LogName>Cisco UCS Monitoring Service</LogName>
<Expression>
<And>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(19993|19985)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(LoginFailed|VersionCheckFailed)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[2]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$TemplateConfig/TypeId$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[4]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">AlertClosed</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteAction" TypeID="CUL!Cisco.Imc.UpdateAndCloseAlert.WriteActionModuleType">
<TimeoutSeconds>660</TimeoutSeconds>
<Loging>false</Loging>
<TypeId>$TemplateConfig/TypeId$</TypeId>
<Publisher>$Data/Params/Param[3]$</Publisher>
</WriteAction>
</WriteActions>
</Rule>

<Rule ID="Cisco.Imc.$TemplateConfig/TypeId$.CloseAlert.Rule" Enabled="true" Target="$Reference/SCLibrary$Microsoft.SystemCenter.RootManagementServer" ConfirmDelivery="false" Priority="Normal">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$TemplateConfig/ServerName$</ComputerName>
<LogName>Cisco UCS Monitoring Service</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">17102</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">FaultData</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Params/Param[2]</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$TemplateConfig/TypeId$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteAction" TypeID="CUL!Cisco.Ucs.CloseAlerts.WriteActionModuleType">
<TimeoutSeconds>660</TimeoutSeconds>
<Loging>false</Loging>
<TypeId>$TemplateConfig/TypeId$</TypeId>
<Dn>$Data/Params/Param[12]$</Dn>
<FaultCode>$Data/Params/Param[5]$</FaultCode>
<FaultId>$Data/Params/Param[8]$</FaultId>
</WriteAction>
</WriteActions>
</Rule>-->
</Rules>
<Tasks>
<Task ID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.LoadCache.Task" Accessibility="Public" Enabled="true" Target="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup" Timeout="300" Remotable="true">
<Category>Custom</Category>
<ProbeAction ID="ProbeAction" TypeID="CUL!Cisco.Imc.ServerGroup.LoadCache.ProbeAction">
<TypeId>$TemplateConfig/TypeId$</TypeId>
<GroupName>$TemplateConfig/GroupName$</GroupName>
<CacheClass>computeRackUnit</CacheClass>
<IntervalSeconds>14400</IntervalSeconds>
<LogingLevel>0</LogingLevel>
<SecureInput>$RunAs[Name="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.SecureReference"]/Password$</SecureInput>
<TimeoutSeconds>660</TimeoutSeconds>
<UserName>$RunAs[Name="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.SecureReference"]/UserName$</UserName>
<ScanMode>$TemplateConfig/ScanMode$</ScanMode>
<NoSsl>$TemplateConfig/NoSsl$</NoSsl>
<PortNumber>$TemplateConfig/PortNumber$</PortNumber>
<ProxyUrl>$TemplateConfig/ProxyUrl$</ProxyUrl>
<ProxyUserName>$TemplateConfig/ProxyUserName$</ProxyUserName>
<ProxyPassword>$TemplateConfig/ProxyPassword$</ProxyPassword>
<IpAddressRange>$TemplateConfig/IpAddressRange$</IpAddressRange>
<ExcludeIpList>$TemplateConfig/ExcludeIpList$</ExcludeIpList>
<ServiceMachine>$TemplateConfig/ServerName$</ServiceMachine>
<WebProxyUrl>$TemplateConfig/WebProxyUrl$</WebProxyUrl>
</ProbeAction>
</Task>
<Task ID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.LoadFault.Task" Accessibility="Public" Enabled="true" Target="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup" Timeout="300" Remotable="true">
<Category>Custom</Category>
<WriteAction ID="WriteAction" TypeID="CUL!Cisco.Ucs.LoadFaultCache.WriteActionModuleType">
<Logging>false</Logging>
<TypeId>$TemplateConfig/TypeId$</TypeId>
<WebProxyUrl>$TemplateConfig/WebProxyUrl$</WebProxyUrl>
</WriteAction>
</Task>
</Tasks>
<Monitors>
<DependencyMonitor ID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.Server.DependencyMonitor" Accessibility="Public" Enabled="true" Target="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" RelationshipType="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroupHostsServer" MemberMonitor="Health!System.Health.EntityState">
<Category>AvailabilityHealth</Category>
<Algorithm>WorstOf</Algorithm>
<MemberUnAvailable>Error</MemberUnAvailable>
</DependencyMonitor>
</Monitors>
</Monitoring>
<Presentation>
<ConsoleTasks>
<ConsoleTask ID="Cisco.Imc.$TemplateConfig/TypeId$.LaunchCIMC.ConsoleTask" Accessibility="Public" Enabled="true" Target="Cisco.Imc.$TemplateConfig/TypeId$.Server" RequireOutput="false" Category="MonitoringObject">
<Application>%ProgramFiles(x86)%\Internet Explorer\iexplore.exe</Application>
<Parameters>
<Parameter>$TemplateConfig/NoSsl$$Target/Property[Type="CUL!Cisco.Imc.Server"]/IPAddress$:$TemplateConfig/PortNumber$/</Parameter>
</Parameters>
<WorkingDirectory/>
</ConsoleTask>
<ConsoleTask ID="Cisco.Imc.$TemplateConfig/TypeId$.LaunchKVM.ConsoleTask" Accessibility="Public" Enabled="true" Target="Cisco.Imc.$TemplateConfig/TypeId$.Server" RequireOutput="false" Category="MonitoringObject">
<Application>%windir%\System32\WindowsPowerShell\v1.0\powershell.exe</Application>
<Parameters>
<Parameter>-noexit</Parameter>
<Parameter>"$TemplateConfig/Ampersand$ C:\ProgramData\Cisco\Scripts\LaunchKVM.ps1"</Parameter>
<Parameter>-Dn '$Target/Property[Type="CUL!Cisco.Imc.Server"]/IPAddress$'</Parameter>
<Parameter>-TypeId '$TemplateConfig/TypeId$'</Parameter>
<Parameter>-WebProxyUrl 'http://$TemplateConfig/ServerName$:8732/UcsMonitoringService'</Parameter>
</Parameters>
<WorkingDirectory>C:\</WorkingDirectory>
</ConsoleTask>
</ConsoleTasks>
</Presentation>
<LanguagePacks>
<LanguagePack ID="ENU" IsDefault="true">
<DisplayStrings>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.Seed">
<Name>IMC Seed</Name>
<Description>IMC Seed Description</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.Server">
<Name>IMC Server($TemplateConfig/GroupName$)</Name>
<Description>IMC Server Description</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.Server.Discovery">
<Name>IMC Server Discovery</Name>
<Description>IMC Discovery Description</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup">
<Name>IMC Servers (Group)</Name>
<Description>IMC Servers (Group) Description</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.Seed.Discovery">
<Name>IMC Seed Discovery</Name>
<Description>IMC Seed Discovery Description</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.Discovery">
<Name>IMC Servers (Group) Discovery</Name>
<Description>IMC Servers (Group) Discovery Description</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.SecureReference">
<Name>$TemplateConfig/GroupName$ Profile</Name>
<Description>This Cisco IMC Profile is used for discovery and monitoring of $TemplateConfig/GroupName$ objects.</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroupHostsServer">
<Name>IMC Group Hosts IMC</Name>
<Description>IMC Group Hosts IMC Description</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.LoadCache.Task">
<Name>Load Cisco IMC Inventory Data</Name>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.ServerGroup.LoadFault.Task">
<Name>Load Cisco IMC Fault Data</Name>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.LaunchCIMC.ConsoleTask">
<Name>Launch CIMC</Name>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.LaunchKVM.ConsoleTask">
<Name>Launch KVM</Name>
</DisplayString>
<!--<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.CloseAlert.Rule">
<Name>$TemplateConfig/GroupName$ Close Alert Rule</Name>
<Description>$TemplateConfig/GroupName$ Close Alert Rule Description</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.Update.Rule">
<Name>$TemplateConfig/GroupName$ Update Alert Rule</Name>
<Description>$TemplateConfig/GroupName$ Update Alert Rule Description</Description>
</DisplayString>-->
<!--<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.UpdateLoginAlert.Rule">
<Name>$TemplateConfig/GroupName$ Update/Close Login Status Alert Rule</Name>
<Description>$TemplateConfig/GroupName$ Close Alert Rule Description</Description>
</DisplayString>-->
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.Group">
<Name>$TemplateConfig/GroupName$</Name>
<Description>$TemplateConfig/GroupName$ Description</Description>
</DisplayString>
<DisplayString ElementID="Cisco.Imc.$TemplateConfig/TypeId$.Group.Discovery">
<Name>$TemplateConfig/Name$ Discovery</Name>
<Description>$TemplateConfig/Name$ Discovery Description</Description>
</DisplayString>
</DisplayStrings>
</LanguagePack>
</LanguagePacks>
</Implementation>
</Template>