31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

201
<ManagementPack ContentReadable="true" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <Manifest> <Identity> <ID>Custom.Unix.Process.Monitoring</ID> <Version>1.0.0.1</Version> </Identity> <Name>Custom.Unix.Process.Monitoring</Name> <References> <Reference Alias="MicrosoftSystemCenterDataWarehouseLibrary"> <ID>Microsoft.SystemCenter.DataWarehouse.Library</ID> <Version>6.1.7221.0</Version> <PublicKeyToken>31bf3856ad364e35</PublicKeyToken> </Reference> <Reference Alias="SC"> <ID>Microsoft.SystemCenter.Library</ID> <Version>6.1.7221.81</Version> <PublicKeyToken>31bf3856ad364e35</PublicKeyToken> </Reference> <Reference Alias="MicrosoftSystemCenterWSManagementLibrary"> <ID>Microsoft.SystemCenter.WSManagement.Library</ID> <Version>6.1.7221.81</Version> <PublicKeyToken>31bf3856ad364e35</PublicKeyToken> </Reference> <Reference Alias="MicrosoftUnixLibrary"> <ID>Microsoft.Unix.Library</ID>

Transcript of 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

Page 1: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ManagementPack ContentReadable="true" xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<Manifest>

<Identity>

<ID>Custom.Unix.Process.Monitoring</ID>

<Version>1.0.0.1</Version>

</Identity>

<Name>Custom.Unix.Process.Monitoring</Name>

<References>

<Reference Alias="MicrosoftSystemCenterDataWarehouseLibrary">

<ID>Microsoft.SystemCenter.DataWarehouse.Library</ID>

<Version>6.1.7221.0</Version>

<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>

</Reference>

<Reference Alias="SC">

<ID>Microsoft.SystemCenter.Library</ID>

<Version>6.1.7221.81</Version>

<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>

</Reference>

<Reference Alias="MicrosoftSystemCenterWSManagementLibrary">

<ID>Microsoft.SystemCenter.WSManagement.Library</ID>

<Version>6.1.7221.81</Version>

<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>

</Reference>

<Reference Alias="MicrosoftUnixLibrary">

<ID>Microsoft.Unix.Library</ID>

Page 2: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Version>6.1.7000.277</Version>

<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>

</Reference>

<Reference Alias="Windows">

<ID>Microsoft.Windows.Library</ID>

<Version>6.1.7221.0</Version>

<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>

</Reference>

<Reference Alias="Health">

<ID>System.Health.Library</ID>

<Version>6.1.7221.0</Version>

<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>

</Reference>

<Reference Alias="System">

<ID>System.Library</ID>

<Version>6.1.7221.0</Version>

<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>

</Reference>

<Reference Alias="SystemPerformanceLibrary">

<ID>System.Performance.Library</ID>

<Version>6.1.7221.0</Version>

<PublicKeyToken>31bf3856ad364e35</PublicKeyToken>

</Reference>

</References>

</Manifest>

Page 3: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<TypeDefinitions>

<EntityTypes>

<ClassTypes>

<ClassType ID="Custom.Unix.Process.Monitoring.AIX.ConfigData" Accessibility="Internal"

Abstract="false" Base="MicrosoftUnixLibrary!Microsoft.Unix.LocalApplication" Hosted="true"

Singleton="false">

<Property ID="Hostname" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="AlertKey" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="RaiseAlert" Type="string" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="MonitoringInterval" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="ProcessMinCount" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="ProcessMaxCount" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="CollectProcessPerfData" Type="string" Key="false" CaseSensitive="false"

Length="256" MinLength="0" />

<Property ID="RaisePerfAlert" Type="string" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="CPUWarnThreshold" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="CPUCriticalThreshold" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="MemoryWarnThreshold" Type="int" Key="false" CaseSensitive="false"

Length="256" MinLength="0" />

<Property ID="MemoryCriticalThreshold" Type="int" Key="false" CaseSensitive="false"

Length="256" MinLength="0" />

Page 4: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Property ID="ProcessNamePattern" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="PerfmonInterval" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="ProcessName" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

</ClassType>

<ClassType ID="Custom.Unix.Process.Monitoring.HPUX.ConfigData" Accessibility="Internal"

Abstract="false" Base="MicrosoftUnixLibrary!Microsoft.Unix.LocalApplication" Hosted="true"

Singleton="false">

<Property ID="Hostname" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="AlertKey" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="RaiseAlert" Type="string" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="MonitoringInterval" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="ProcessMinCount" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="ProcessMaxCount" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="CollectProcessPerfData" Type="string" Key="false" CaseSensitive="false"

Length="256" MinLength="0" />

<Property ID="RaisePerfAlert" Type="string" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="CPUWarnThreshold" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="CPUCriticalThreshold" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="MemoryWarnThreshold" Type="int" Key="false" CaseSensitive="false"

Length="256" MinLength="0" />

Page 5: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Property ID="MemoryCriticalThreshold" Type="int" Key="false" CaseSensitive="false"

Length="256" MinLength="0" />

<Property ID="ProcessNamePattern" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="PerfmonInterval" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="ProcessName" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

</ClassType>

<ClassType ID="Custom.Unix.Process.Monitoring.RHEL.ConfigData" Accessibility="Internal"

Abstract="false" Base="MicrosoftUnixLibrary!Microsoft.Unix.LocalApplication" Hosted="true"

Singleton="false">

<Property ID="Hostname" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="AlertKey" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="RaiseAlert" Type="string" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="MonitoringInterval" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="ProcessMinCount" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="ProcessMaxCount" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="CollectProcessPerfData" Type="string" Key="false" CaseSensitive="false"

Length="256" MinLength="0" />

<Property ID="RaisePerfAlert" Type="string" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="CPUWarnThreshold" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="CPUCriticalThreshold" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

Page 6: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Property ID="MemoryWarnThreshold" Type="int" Key="false" CaseSensitive="false"

Length="256" MinLength="0" />

<Property ID="MemoryCriticalThreshold" Type="int" Key="false" CaseSensitive="false"

Length="256" MinLength="0" />

<Property ID="ProcessNamePattern" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="ProcessName" Type="string" Key="true" CaseSensitive="false" Length="256"

MinLength="0" />

<Property ID="PerfmonInterval" Type="int" Key="false" CaseSensitive="false" Length="256"

MinLength="0" />

</ClassType>

</ClassTypes>

</EntityTypes>

<ModuleTypes>

<DataSourceModuleType

ID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.AIX" Accessibility="Internal"

Batching="false">

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

<xsd:element minOccurs="1" name="CollectProcessPerfData" type="xsd:string" />

<xsd:element minOccurs="1" name="RaisePerfAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="CPUWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="CPUCriticalThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemCriticalThreshold" type="xsd:integer" />

Page 7: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Configuration>

<ModuleImplementation Isolation="Any">

<Composite>

<MemberModules>

<DataSource ID="DS"

TypeID="Custom.Unix.Process.Monitoring.DataSource.RunShellCommand">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<ShellCommand>ps -e -o pcpu -o pmem -o args | grep $Config/ProcessNamePattern$ | grep -v

grep | perl -e '

use strict;

use warnings;

my @records = ();

eval(q^@records = ^.chr(60).chr(62));

my $cpu=0;

my $highCpu=0;

my $avgCpu=0;

my $mem=0;

my $highMemory=0;

my $avgMemory=0;

my $recNum = @records;

if($recNum ne 0)

{

for(my $count=0;eval(q^$count^.chr(60).q^$recNum^);$count++){

my @temp = split(q^ ^,$records[$count]);

if($temp[0] gt $highCpu){

Page 8: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$highCpu = $temp[0];

}

$cpu = $cpu + $temp[0];

if($temp[1] gt $highMemory){

$highMemory = $temp[1];

}

$mem = $mem + $temp[1];

}

$avgCpu = $cpu/$recNum;

$avgMemory = $mem/$recNum;

}

my $retrnVal = $avgCpu.chr(124).$highCpu.chr(124).$avgMemory.chr(124).$highMemory;

print $retrnVal;

'</ShellCommand>

<Timeout>$Config/Timeout$</Timeout>

</DataSource>

<ProbeAction ID="PropBag"

TypeID="Windows!Microsoft.Windows.PowerShellPropertyBagProbe">

<ScriptName>ProcessAIXProcessesPerformance.ps1</ScriptName>

<ScriptBody><![CDATA[param (

[string]$CmdOutput,

[string]$CollectProcessPerfData,

[string]$RaisePerfAlert,

[int]$CPUWarnThreshold,

[int]$CPUCriticalThreshold,

[int]$MemWarnThreshold,

Page 9: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

[int]$MemCriticalThreshold,

[string]$ProcessPattern

);

$api = New-Object -comObject "MOM.ScriptAPI";

$bag = $api.CreatePropertyBag()

if($CollectProcessPerfData -eq "YES"){

if ($CmdOutput -ne $null -and $CmdOutput -ne ""){

[array] $data = $CmdOutput.split("|")

$msg= "Avg_CPU_Used_AIX:"+$data[0]+" | Max_CPU_Used_AIX:"+$data[1]+" |

Avg_Memory_Used_AIX:"+$data[2]+" | Max_Memory_Used_AIX:"+$data[3]+" | "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -

EventID 7660 -Message $msg -EntryType Information

$bag.AddValue('Avg_CPU_Used_AIX',$data[0])

$bag.AddValue('Max_CPU_Used_AIX',$data[1])

$bag.AddValue('Avg_Memory_Used_AIX',$data[2])

$bag.AddValue('Max_Memory_Used_AIX',$data[3])

}

}

if($RaisePerfAlert -eq "YES")

{

if ($CmdOutput -ne $null -and $CmdOutput -ne ""){

[array] $alData = $CmdOutput.split("|")

$msg= "Avg_CPU_Used_AIX:"+$alData[0]+" |

Max_CPU_Used_AIX:"+$alData[1]+" | Avg_Memory_Used_AIX:"+$alData[2]+" |

Max_Memory_Used_AIX:"+$alData[3]

Page 10: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -

EventID 7661 -Message $msg -EntryType Information

if([int]$alData[1] -ge $CPUCriticalThreshold){

$msg = "Process %CPU Used : Critical : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 7662 -Message $msg -EntryType Information

$bag.AddValue('UsedCPUState',"Critical")

}

elseif([int]$alData[1] -ge $CPUWarnThreshold -AND $alData[1] -lt

$CPUCriticalThreshold){

$msg = "Process %CPU Used : Warning : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 7662 -Message $msg -EntryType Information

$bag.AddValue('UsedCPUState',"Warning")

}

elseif([int]$alData[1] -lt $CPUWarnThreshold){

$msg = "Process %CPU Used : Success : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 7662 -Message $msg -EntryType Information

$bag.AddValue('UsedCPUState',"Success")

}

else{}

if([int]$alData[3] -ge $MemCriticalThreshold){

$msg = "Process %Mem Used : Critical : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 7663 -Message $msg -EntryType Information

$bag.AddValue('UsedMemoryState',"Critical")

}

Page 11: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

elseif([int]$alData[3] -ge $MemWarnThreshold -AND $alData[3] -lt

$MemCriticalThreshold){

$msg = "Process %Mem Used : Warning : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 7663 -Message $msg -EntryType Information

$bag.AddValue('UsedMemoryState',"Warning")

}

elseif([int]$alData[3] -lt $MemWarnThreshold){

$msg = "Process %Mem Used : Success : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 7663 -Message $msg -EntryType Information

$bag.AddValue('UsedMemoryState',"Success")

}

else{}

}

}

$bag

]]></ScriptBody>

<SnapIns />

<Parameters>

<Parameter>

<Name>CmdOutput</Name>

<Value>$Data///*[local-name()="StdOut"]$</Value>

</Parameter>

<Parameter>

<Name>CollectProcessPerfData</Name>

<Value>$Config/CollectProcessPerfData$</Value>

Page 12: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Parameter>

<Parameter>

<Name>RaisePerfAlert</Name>

<Value>$Config/RaisePerfAlert$</Value>

</Parameter>

<Parameter>

<Name>CPUWarnThreshold</Name>

<Value>$Config/CPUWarnThreshold$</Value>

</Parameter>

<Parameter>

<Name>CPUCriticalThreshold</Name>

<Value>$Config/CPUCriticalThreshold$</Value>

</Parameter>

<Parameter>

<Name>MemWarnThreshold</Name>

<Value>$Config/MemWarnThreshold$</Value>

</Parameter>

<Parameter>

<Name>MemCriticalThreshold</Name>

<Value>$Config/MemCriticalThreshold$</Value>

</Parameter>

<Parameter>

<Name>ProcessPattern</Name>

<Value>$Config/ProcessNamePattern$</Value>

</Parameter>

Page 13: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Parameters>

<TimeoutSeconds>150</TimeoutSeconds>

</ProbeAction>

</MemberModules>

<Composition>

<Node ID="PropBag">

<Node ID="DS" />

</Node>

</Composition>

</Composite>

</ModuleImplementation>

<OutputType>System!System.PropertyBagData</OutputType>

</DataSourceModuleType>

<DataSourceModuleType

ID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.HPUX" Accessibility="Internal"

Batching="false">

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

<xsd:element minOccurs="1" name="CollectProcessPerfData" type="xsd:string" />

<xsd:element minOccurs="1" name="RaisePerfAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="CPUWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="CPUCriticalThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemWarnThreshold" type="xsd:integer" />

Page 14: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<xsd:element minOccurs="1" name="MemCriticalThreshold" type="xsd:integer" />

</Configuration>

<ModuleImplementation Isolation="Any">

<Composite>

<MemberModules>

<DataSource ID="RunScript"

TypeID="Custom.Unix.Process.Monitoring.DataSource.RunShellCommand">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<ShellCommand>egrep '$Config/ProcessNamePattern$|Memory' /ZZZZ/top.out | grep -v grep

| perl -e '

use strict;

use warnings;

my @records = ();

eval(q^@records = ^.chr(60).chr(62));

my $totMemory = $records[0];

$totMemory =~ /.*\((.*)\) real.*$/;

$totMemory = $1;

if($totMemory =~ q^K^){

$totMemory =~ /^(.*)K$/;

$totMemory = $1;

}

elsif($totMemory =~ q^M^){

$totMemory =~ /^(.*)M$/;

$totMemory = $1 * 1024;

}

Page 15: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

elsif($totMemory =~ q^G^){

$totMemory =~ /^(.*)G$/;

$totMemory = $1 * 1048576;

}

else {$totMemory = 1};

my $cpu=0;

my $highCpu=0;

my $avgCpu=0;

my $mem=0;

my $highMemory=0;

my $avgMemory=0;

my $recNum = @records;

if($recNum ne 0)

{

for(my $count=1;eval(q^$count^.chr(60).q^$recNum^);$count++){

my @temp = split(q^ ^,$records[$count]);

if($temp[11] gt $highCpu){

$highCpu = $temp[11];

}

$cpu = $cpu + $temp[11];

if($temp[7] =~ q^K^){

$temp[7] =~ /^(.*)K$/;

$temp[7] = $1;

}

Page 16: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

elsif($temp[7] =~ q^M^){

$temp[7] =~ /^(.*)M$/;

$temp[7] = $1 * 1024;

}

elsif($temp[7] =~ q^G^){

$temp[7] =~ /^(.*)G$/;

$temp[7] = $1 * 1048576;

}

else {$temp[7] = 0};

if($temp[7] gt $highMemory){

$highMemory = ($temp[7]/$totMemory)*100;

}

$mem = $mem + $temp[7];

}

$avgCpu = $cpu/($recNum-1);

$avgMemory = ($mem*100/$totMemory)/($recNum-1);

}

my $retrnVal = $avgCpu.chr(124).$highCpu.chr(124).$avgMemory.chr(124).$highMemory;

print $retrnVal;'

</ShellCommand>

<Timeout>$Config/Timeout$</Timeout>

</DataSource>

<ProbeAction ID="PSProbe"

TypeID="Windows!Microsoft.Windows.PowerShellPropertyBagProbe">

<ScriptName>GetProcessPerfDataHPUX.ps1</ScriptName>

<ScriptBody><![CDATA[

Page 17: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

param (

[string]$CmdOutput,

[string]$CollectProcessPerfData,

[string]$RaisePerfAlert,

[int]$CPUWarnThreshold,

[int]$CPUCriticalThreshold,

[int]$MemWarnThreshold,

[int]$MemCriticalThreshold,

[string]$ProcessPattern

);

$api = New-Object -comObject "MOM.ScriptAPI";

$bag = $api.CreatePropertyBag()

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -EventID 8660 -Message

$CmdOutput -EntryType Information

if($CollectProcessPerfData -eq "YES"){

if ($CmdOutput -ne $null -and $CmdOutput -ne ""){

[array] $data = $CmdOutput.split("|")

$msg= "Avg_CPU_Used_HPUX:"+$data[0]+" |

Max_CPU_Used_HPUX:"+$data[1]+" | Avg_Memory_Used_HPUX:"+$data[2]+" |

Max_Memory_Used_HPUX:"+$data[3]+" | "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -

EventID 8660 -Message $msg -EntryType Information

$bag.AddValue('Avg_CPU_Used_HPUX',$data[0])

$bag.AddValue('Max_CPU_Used_HPUX',$data[1])

$bag.AddValue('Avg_Memory_Used_HPUX',$data[2])

$bag.AddValue('Max_Memory_Used_HPUX',$data[3])

Page 18: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

}

}

if($RaisePerfAlert -eq "YES")

{

if ($CmdOutput -ne $null -and $CmdOutput -ne ""){

[array] $alData = $CmdOutput.split("|")

$msg= "Avg_CPU_Used_HPUX:"+$alData[0]+" |

Max_CPU_Used_HPUX:"+$alData[1]+" | Avg_Memory_Used_HPUX:"+$alData[2]+" |

Max_Memory_Used_HPUX:"+$alData[3]

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -

EventID 8661 -Message $msg -EntryType Information

if([int]$alData[1] -ge $CPUCriticalThreshold){

$msg = "Process %CPU Used : Critical : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 8662 -Message $msg -EntryType Information

$bag.AddValue('UsedCPUState',"Critical")

}

elseif([int]$alData[1] -ge $CPUWarnThreshold -AND $alData[1] -lt

$CPUCriticalThreshold){

$msg = "Process %CPU Used : Warning : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 8662 -Message $msg -EntryType Information

$bag.AddValue('UsedCPUState',"Warning")

}

elseif([int]$alData[1] -lt $CPUWarnThreshold){

$msg = "Process %CPU Used : Success : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 8662 -Message $msg -EntryType Information

Page 19: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$bag.AddValue('UsedCPUState',"Success")

}

else{}

if([int]$alData[3] -ge $MemCriticalThreshold){

$msg = "Process %Mem Used : Critical : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 8663 -Message $msg -EntryType Information

$bag.AddValue('UsedMemoryState',"Critical")

}

elseif([int]$alData[3] -ge $MemWarnThreshold -AND $alData[3] -lt

$MemCriticalThreshold){

$msg = "Process %Mem Used : Warning : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 8663 -Message $msg -EntryType Information

$bag.AddValue('UsedMemoryState',"Warning")

}

elseif([int]$alData[3] -lt $MemWarnThreshold){

$msg = "Process %Mem Used : Success : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 8663 -Message $msg -EntryType Information

$bag.AddValue('UsedMemoryState',"Success")

}

else{}

}

}

$bag

]]></ScriptBody>

Page 20: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<SnapIns />

<Parameters>

<Parameter>

<Name>CmdOutput</Name>

<Value>$Data///*[local-name()="StdOut"]$</Value>

</Parameter>

<Parameter>

<Name>CollectProcessPerfData</Name>

<Value>$Config/CollectProcessPerfData$</Value>

</Parameter>

<Parameter>

<Name>RaisePerfAlert</Name>

<Value>$Config/RaisePerfAlert$</Value>

</Parameter>

<Parameter>

<Name>CPUWarnThreshold</Name>

<Value>$Config/CPUWarnThreshold$</Value>

</Parameter>

<Parameter>

<Name>CPUCriticalThreshold</Name>

<Value>$Config/CPUCriticalThreshold$</Value>

</Parameter>

<Parameter>

<Name>MemWarnThreshold</Name>

<Value>$Config/MemWarnThreshold$</Value>

Page 21: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Parameter>

<Parameter>

<Name>MemCriticalThreshold</Name>

<Value>$Config/MemCriticalThreshold$</Value>

</Parameter>

<Parameter>

<Name>ProcessPattern</Name>

<Value>$Config/ProcessNamePattern$</Value>

</Parameter>

</Parameters>

<TimeoutSeconds>150</TimeoutSeconds>

</ProbeAction>

</MemberModules>

<Composition>

<Node ID="PSProbe">

<Node ID="RunScript" />

</Node>

</Composition>

</Composite>

</ModuleImplementation>

<OutputType>System!System.PropertyBagData</OutputType>

</DataSourceModuleType>

<DataSourceModuleType

ID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RHEL" Accessibility="Internal"

Batching="false">

<Configuration>

Page 22: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

<xsd:element minOccurs="1" name="CollectProcessPerfData" type="xsd:string" />

<xsd:element minOccurs="1" name="RaisePerfAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="CPUWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="CPUCriticalThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemCriticalThreshold" type="xsd:integer" />

</Configuration>

<ModuleImplementation Isolation="Any">

<Composite>

<MemberModules>

<DataSource ID="RunPerfRHEL"

TypeID="Custom.Unix.Process.Monitoring.DataSource.RunShellCommand">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<ShellCommand>ps -e -o pcpu -o pmem -o cmd | grep $Config/ProcessNamePattern$ | grep -v

grep | perl -e '

use strict;

use warnings;

my @records = ();

eval(q^@records = ^.chr(60).chr(62));

my $cpu=0;

my $highCpu=0;

Page 23: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

my $avgCpu=0;

my $mem=0;

my $highMemory=0;

my $avgMemory=0;

my $recNum = @records;

if($recNum ne 0)

{

for(my $count=0;eval(q^$count^.chr(60).q^$recNum^);$count++){

my @temp = split(q^ ^,$records[$count]);

if($temp[0] gt $highCpu){

$highCpu = $temp[0];

}

$cpu = $cpu + $temp[0];

if($temp[1] gt $highMemory){

$highMemory = $temp[1];

}

$mem = $mem + $temp[1];

}

$avgCpu = $cpu/$recNum;

$avgMemory = $mem/$recNum;

}

my $retrnVal = $avgCpu.chr(124).$highCpu.chr(124).$avgMemory.chr(124).$highMemory;

print $retrnVal;

'

</ShellCommand>

Page 24: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Timeout>$Config/Timeout$</Timeout>

</DataSource>

<ProbeAction ID="ProseccPerfDataAIX"

TypeID="Windows!Microsoft.Windows.PowerShellPropertyBagProbe">

<ScriptName>ProcessUnixProcessesPerformance.ps1</ScriptName>

<ScriptBody><![CDATA[

param (

[string]$CmdOutput,

[string]$CollectProcessPerfData,

[string]$RaisePerfAlert,

[int]$CPUWarnThreshold,

[int]$CPUCriticalThreshold,

[int]$MemWarnThreshold,

[int]$MemCriticalThreshold,

[string]$ProcessPattern

);

$api = New-Object -comObject "MOM.ScriptAPI";

$bag = $api.CreatePropertyBag()

if($CollectProcessPerfData -eq "YES"){

if ($CmdOutput -ne $null -and $CmdOutput -ne ""){

[array] $data = $CmdOutput.split("|")

$msg= "Avg_CPU_Used_Linux:"+$data[0]+" |

Max_CPU_Used_Linux:"+$data[1]+" | Avg_Memory_Used_Linux:"+$data[2]+" |

Max_Memory_Used_Linux:"+$data[3]+" | "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -

EventID 6660 -Message $msg -EntryType Information

Page 25: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$bag.AddValue('Avg_CPU_Used_Linux',$data[0])

$bag.AddValue('Max_CPU_Used_Linux',$data[1])

$bag.AddValue('Avg_Memory_Used_Linux',$data[2])

$bag.AddValue('Max_Memory_Used_Linux',$data[3])

}

}

if($RaisePerfAlert -eq "YES")

{

if ($CmdOutput -ne $null -and $CmdOutput -ne ""){

[array] $alData = $CmdOutput.split("|")

$msg= "Avg_CPU_Used_Linux:"+$alData[0]+" |

Max_CPU_Used_Linux:"+$alData[1]+" | Avg_Memory_Used_Linux:"+$alData[2]+" |

Max_Memory_Used_Linux:"+$alData[3]

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -

EventID 6661 -Message $msg -EntryType Information

if([int]$alData[1] -ge $CPUCriticalThreshold){

$msg = "Process %CPU Used : Critical : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 6662 -Message $msg -EntryType Information

$bag.AddValue('UsedCPUState',"Critical")

}

elseif([int]$alData[1] -ge $CPUWarnThreshold -AND $alData[1] -lt

$CPUCriticalThreshold){

$msg = "Process %CPU Used : Warning : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 6662 -Message $msg -EntryType Information

$bag.AddValue('UsedCPUState',"Warning")

}

Page 26: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

elseif([int]$alData[1] -lt $CPUWarnThreshold){

$msg = "Process %CPU Used : Success : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 6662 -Message $msg -EntryType Information

$bag.AddValue('UsedCPUState',"Success")

}

else{}

if([int]$alData[3] -ge $MemCriticalThreshold){

$msg = "Process %Mem Used : Critical : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 6663 -Message $msg -EntryType Information

$bag.AddValue('UsedMemoryState',"Critical")

}

elseif([int]$alData[3] -ge $MemWarnThreshold -AND $alData[3] -lt

$MemCriticalThreshold){

$msg = "Process %Mem Used : Warning : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 6663 -Message $msg -EntryType Information

$bag.AddValue('UsedMemoryState',"Warning")

}

elseif([int]$alData[3] -lt $MemWarnThreshold){

$msg = "Process %Mem Used : Success : "+$ProcessPattern

write-eventlog -logname "Operations Manager" -Source "Health Service

Script" -EventID 6663 -Message $msg -EntryType Information

$bag.AddValue('UsedMemoryState',"Success")

}

else{}

Page 27: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

}

}

$bag

]]></ScriptBody>

<SnapIns />

<Parameters>

<Parameter>

<Name>CmdOutput</Name>

<Value>$Data///*[local-name()="StdOut"]$</Value>

</Parameter>

<Parameter>

<Name>CollectProcessPerfData</Name>

<Value>$Config/CollectProcessPerfData$</Value>

</Parameter>

<Parameter>

<Name>RaisePerfAlert</Name>

<Value>$Config/RaisePerfAlert$</Value>

</Parameter>

<Parameter>

<Name>CPUWarnThreshold</Name>

<Value>$Config/CPUWarnThreshold$</Value>

</Parameter>

<Parameter>

<Name>CPUCriticalThreshold</Name>

<Value>$Config/CPUCriticalThreshold$</Value>

Page 28: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Parameter>

<Parameter>

<Name>MemWarnThreshold</Name>

<Value>$Config/MemWarnThreshold$</Value>

</Parameter>

<Parameter>

<Name>MemCriticalThreshold</Name>

<Value>$Config/MemCriticalThreshold$</Value>

</Parameter>

<Parameter>

<Name>ProcessPattern</Name>

<Value>$Config/ProcessNamePattern$</Value>

</Parameter>

</Parameters>

<TimeoutSeconds>150</TimeoutSeconds>

</ProbeAction>

</MemberModules>

<Composition>

<Node ID="ProseccPerfDataAIX">

<Node ID="RunPerfRHEL" />

</Node>

</Composition>

</Composite>

</ModuleImplementation>

<OutputType>System!System.PropertyBagData</OutputType>

Page 29: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DataSourceModuleType>

<DataSourceModuleType

ID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RunTop.HPUX"

Accessibility="Internal" Batching="false">

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="0" name="SyncTime" type="xsd:string" />

</Configuration>

<ModuleImplementation Isolation="Any">

<Composite>

<MemberModules>

<DataSource ID="Sched" TypeID="System!System.SimpleScheduler">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<SyncTime>$Config/SyncTime$</SyncTime>

</DataSource>

<ProbeAction ID="WSMAN"

TypeID="MicrosoftUnixLibrary!Microsoft.Unix.WSMan.Invoke.ProbeAction">

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<Uri>http://schemas.microsoft.com/wbem/wscim/1/cim-

schema/2/SCX_OperatingSystem?__cimnamespace=root/scx</Uri>

<Selector />

<InvokeAction>ExecuteShellCommand</InvokeAction>

<Input><![CDATA[<p:ExecuteShellCommand_INPUT

xmlns:p="http://schemas.microsoft.com/wbem/wscim/1/cim-

schema/2/SCX_OperatingSystem"><p:command>perl -e 'use strict; use warnings; my $topOut =

q^top.out^; open(PFI,chr(62), $topOut); print PFI q^Initiate^; close(PFI); qx^top -f /ZZZZ/top.out -n

Page 30: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

10000^;'</p:command><p:timeout>$Config/Timeout$</p:timeout></p:ExecuteShellCommand_INPUT>]

]></Input>

</ProbeAction>

</MemberModules>

<Composition>

<Node ID="WSMAN">

<Node ID="Sched" />

</Node>

</Composition>

</Composite>

</ModuleImplementation>

<OutputType>MicrosoftSystemCenterWSManagementLibrary!Microsoft.SystemCenter.WSManagement

.WSManData</OutputType>

</DataSourceModuleType>

<DataSourceModuleType ID="Custom.Unix.Process.Monitoring.DataSource.MonitorProcess"

Accessibility="Internal" Batching="false">

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="RaiseAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="ProcessMinCount" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessMaxCount" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

</Configuration>

<ModuleImplementation Isolation="Any">

<Composite>

Page 31: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<MemberModules>

<DataSource ID="RunShellCmd"

TypeID="Custom.Unix.Process.Monitoring.DataSource.RunShellCommand">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<ShellCommand>ps -ef | grep '$Config/ProcessNamePattern$' | grep -v grep | wc -l | perl -e '

use strict;

use warnings;

my $val=q^^;

eval(q^$val=^.chr(60).chr(62));

$val =~ s/\D//g;

print $val;

'</ShellCommand>

<Timeout>150</Timeout>

</DataSource>

<ProbeAction ID="PSPrb"

TypeID="Windows!Microsoft.Windows.PowerShellPropertyBagProbe">

<ScriptName>UnixProcessMonitor.ps1</ScriptName>

<ScriptBody><![CDATA[param (

$CmdOutput,

[string]$RaiseAlert,

$ProcessMinCount,

$ProcessMaxCount,

$TargetSystem

);

Page 32: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$api = New-Object -comObject "MOM.ScriptAPI";

$msg = $TargetSystem + ": Command Output : " + $CmdOutput

[string] $test = $CmdOutput

$msg = $msg + " |length:" + $test.length

#write-eventlog -logname "Operations Manager" -Source "Health Service Script" -EventID 7890 -

Message $msg -EntryType Information

if ($CmdOutput -ne $null -and $CmdOutput -ne ""){

if($RaiseAlert -eq "YES"){

if($CmdOutput -lt $ProcessMinCount -OR $CmdOutput -gt $ProcessMaxCount){

$msg = "Raising alert:" + $TargetSystem + " | Command Output:" + $CmdOutput

+ " | MinCount:" + $ProcessMinCount + " | MaxCount:" + $ProcessMaxCount

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -

EventID 7891 -Message $msg -EntryType Information

$bag = $api.CreatePropertyBag();

$bag.AddValue('Description',$CmdOutput);

$bag;

}

else{

$msg = "NOT Raising alert:" + $TargetSystem + " | Command Output:" +

$CmdOutput + " | MinCount:" + $ProcessMinCount + " | MaxCount:" + $ProcessMaxCount

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -

EventID 7892 -Message $msg -EntryType Information

$bag = $api.CreatePropertyBag();

$bag.AddValue('Description','No match');

$bag;

}

}

Page 33: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

else{

$msg = "NOT Raising alert:" + $TargetSystem + " | Command Output:" + $CmdOutput +

" | MinCount:" + $ProcessMinCount + " | MaxCount:" + $ProcessMaxCount

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -EventID

7892 -Message $msg -EntryType Information

$bag = $api.CreatePropertyBag();

$bag.AddValue('Description','No match');

$bag;

}

} else {

$msg = "NOT Raising alert:" + $TargetSystem + " | Command Output:" + $CmdOutput + " |

MinCount:" + $ProcessMinCount + " | MaxCount:" + $ProcessMaxCount

write-eventlog -logname "Operations Manager" -Source "Health Service Script" -EventID 7892 -

Message $msg -EntryType Information

$bag = $api.CreatePropertyBag();

$bag.AddValue('Description','No match');

$bag;

}

]]></ScriptBody>

<SnapIns />

<Parameters>

<Parameter>

<Name>CmdOutput</Name>

<Value>$Data///*[local-name()="StdOut"]$</Value>

</Parameter>

<Parameter>

<Name>RaiseAlert</Name>

Page 34: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Value>$Config/RaiseAlert$</Value>

</Parameter>

<Parameter>

<Name>ProcessMinCount</Name>

<Value>$Config/ProcessMinCount$</Value>

</Parameter>

<Parameter>

<Name>ProcessMaxCount</Name>

<Value>$Config/ProcessMaxCount$</Value>

</Parameter>

<Parameter>

<Name>TargetSystem</Name>

<Value>$Config/TargetSystem$</Value>

</Parameter>

</Parameters>

<TimeoutSeconds>150</TimeoutSeconds>

</ProbeAction>

</MemberModules>

<Composition>

<Node ID="PSPrb">

<Node ID="RunShellCmd" />

</Node>

</Composition>

</Composite>

</ModuleImplementation>

Page 35: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<OutputType>System!System.PropertyBagData</OutputType>

</DataSourceModuleType>

<DataSourceModuleType ID="Custom.Unix.Process.Monitoring.DataSource.ReadConfig.AIX"

Accessibility="Internal" Batching="false">

<Configuration>

<xsd:element minOccurs="1" name="Interval" type="xsd:integer" />

<xsd:element minOccurs="0" name="SyncTime" type="xsd:string" />

<xsd:element minOccurs="1" name="ConfigFilePath" type="xsd:string" />

</Configuration>

<OverrideableParameters>

<OverrideableParameter ID="Interval" Selector="$Config/Interval$" ParameterType="int" />

<OverrideableParameter ID="ConfigFilePath" Selector="$Config/ConfigFilePath$"

ParameterType="string" />

</OverrideableParameters>

<ModuleImplementation Isolation="Any">

<Composite>

<MemberModules>

<DataSource ID="DiscoveryScheduler" TypeID="System!System.Discovery.Scheduler">

<Scheduler>

<SimpleReccuringSchedule>

<Interval>$Config/Interval$</Interval>

<SyncTime>$Config/SyncTime$</SyncTime>

</SimpleReccuringSchedule>

<ExcludeDates />

</Scheduler>

</DataSource>

Page 36: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ProbeAction ID="PSDisco" TypeID="Windows!Microsoft.Windows.PowerShellDiscoveryProbe">

<ScriptName>ReadProcessMonConfigAIX.ps1</ScriptName>

<ScriptBody><![CDATA[param (

[string] $ConfigFilepath,

[string] $ManagedEntityID,

[string] $SourceID

)

$api = New-Object -comObject 'Mom.ScriptAPI'

$discoveryData = $api.CreateDiscoveryData(0, $SourceID, $ManagedEntityID)

$data = ""

[array] $allServers = @()

if(Test-Path $ConfigFilepath)

{

[array] $contents = get-content $ConfigFilepath

$rms=get-itemproperty -path "HKLM:\SOFTWARE\Microsoft\Microsoft Operations

Manager\3.0\Machine Settings\" |% {$_.DefaultSDKServiceMachine}

if ((Get-PSSnapin | Where-Object {$_.Name -eq

'Microsoft.EnterpriseManagement.OperationsManager.Client'}) -eq $null) {

Add-PSSnapin Microsoft.EnterpriseManagement.OperationsManager.Client -ErrorAction

SilentlyContinue -ErrorVariable Err

if ($Err) { $(throw write-Host $Err) }

}

Set-Location "OperationsManagerMonitoring::" -ErrorVariable errSnapin ;

new-managementGroupConnection -ConnectionString:$rms -ErrorVariable errSnapin ;

Page 37: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

Set-Location $rms -ErrorVariable errSnapin ;

$contents | ForEach-Object{

[string[]] $splitstring = '","'

[StringSplitOptions]$option = "None"

[array] $data = $_.split($splitstring,$option)

$msg = "Adding instance for "+$data[3]

if($data[3] -ne "SERVER"){

#write-eventlog -logname "Operations Manager" -Source "Health Service Script"

-EventID 6002 -Message $msg -EntryType Information

if($data[3] -ne "ALL_AIX_SERVERS"){

$mo = get-monitoringclass | where {$_.name -eq

'Microsoft.AIX.Computer'} | get-monitoringobject | where

{(($_.DisplayName).toLower()).contains($data[3].toLower())}

if ($mo -ne $null) {

write-eventlog -logname "Operations Manager" -Source "Health

Service Script" -EventID 6003 -Message $mo.DisplayName -EntryType Information

$oInst =

$discoveryData.CreateClassInstance("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigD

ata']$")

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Al

ertKey$", $data[2])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pr

ocessNamePattern$", $data[4])

$oInst.AddProperty("$MPElement[Name='System!System.Entity']/DisplayName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pr

ocessMinCount$", $data[5])

Page 38: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pr

ocessMaxCount$", $data[6])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/M

onitoringInterval$", $data[7])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Rai

seAlert$", $data[8])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Rai

sePerfAlert$", $data[9])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Co

llectProcessPerfData$", $data[10])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/CP

UWarnThreshold$", $data[11])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/CP

UCriticalThreshold$", $data[12])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/M

emoryWarnThreshold$", $data[13])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/M

emoryCriticalThreshold$", $data[14])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pe

rfmonInterval$", $data[15])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pr

ocessName$", $data[16])

Page 39: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Ho

stname$", $mo.DisplayName)

$oInst.AddProperty("$MPElement[Name='MicrosoftUnixLibrary!Microsoft.Unix.Computer']/Prin

cipalName$", $mo.DisplayName)

$discoveryData.AddInstance($oInst)

}

}

else{

$mo = get-monitoringclass | where {$_.name -eq

'Microsoft.AIX.Computer'} | get-monitoringobject

$mo | ForEach-Object {

write-eventlog -logname "Operations Manager" -Source "Health

Service Script" -EventID 6003 -Message $_.DisplayName -EntryType Information

$oInst =

$discoveryData.CreateClassInstance("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigD

ata']$")

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Al

ertKey$", $data[2])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pr

ocessNamePattern$", $data[4])

$oInst.AddProperty("$MPElement[Name='System!System.Entity']/DisplayName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pr

ocessMinCount$", $data[5])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pr

ocessMaxCount$", $data[6])

Page 40: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/M

onitoringInterval$", $data[7])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Rai

seAlert$", $data[8])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Rai

sePerfAlert$", $data[9])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Co

llectProcessPerfData$", $data[10])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/CP

UWarnThreshold$", $data[11])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/CP

UCriticalThreshold$", $data[12])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/M

emoryWarnThreshold$", $data[13])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/M

emoryCriticalThreshold$", $data[14])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pe

rfmonInterval$", $data[15])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Pr

ocessName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.AIX.ConfigData']/Ho

stname$", $_.DisplayName)

Page 41: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='MicrosoftUnixLibrary!Microsoft.Unix.Computer']/Prin

cipalName$", $_.DisplayName)

$discoveryData.AddInstance($oInst)

}

}

}

}

}

$discoveryData

Remove-variable api

Remove-variable discoveryData

]]></ScriptBody>

<Parameters>

<Parameter>

<Name>SourceID</Name>

<Value>$MPElement$</Value>

</Parameter>

<Parameter>

<Name>ManagedEntityID</Name>

<Value>$Target/Id$</Value>

</Parameter>

<Parameter>

<Name>ConfigFilepath</Name>

<Value>$Config/ConfigFilePath$</Value>

</Parameter>

Page 42: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Parameters>

<TimeoutSeconds>300</TimeoutSeconds>

</ProbeAction>

</MemberModules>

<Composition>

<Node ID="PSDisco">

<Node ID="DiscoveryScheduler" />

</Node>

</Composition>

</Composite>

</ModuleImplementation>

<OutputType>System!System.Discovery.Data</OutputType>

</DataSourceModuleType>

<DataSourceModuleType ID="Custom.Unix.Process.Monitoring.DataSource.ReadConfig.HPUX"

Accessibility="Internal" Batching="false">

<Configuration>

<xsd:element minOccurs="1" name="Interval" type="xsd:integer" />

<xsd:element minOccurs="0" name="SyncTime" type="xsd:string" />

<xsd:element minOccurs="1" name="ConfigFilePath" type="xsd:string" />

</Configuration>

<OverrideableParameters>

<OverrideableParameter ID="Interval" Selector="$Config/Interval$" ParameterType="int" />

<OverrideableParameter ID="ConfigPath" Selector="$Config/ConfigFilePath$"

ParameterType="string" />

</OverrideableParameters>

<ModuleImplementation Isolation="Any">

Page 43: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Composite>

<MemberModules>

<DataSource ID="DiscoSc" TypeID="System!System.Discovery.Scheduler">

<Scheduler>

<SimpleReccuringSchedule>

<Interval>$Config/Interval$</Interval>

<SyncTime>$Config/SyncTime$</SyncTime>

</SimpleReccuringSchedule>

<ExcludeDates />

</Scheduler>

</DataSource>

<ProbeAction ID="PSDisco" TypeID="Windows!Microsoft.Windows.PowerShellDiscoveryProbe">

<ScriptName>ReadProcessMonConfigHPUX.ps1</ScriptName>

<ScriptBody><![CDATA[param (

[string] $ConfigFilepath,

[string] $ManagedEntityID,

[string] $SourceID

)

$api = New-Object -comObject 'Mom.ScriptAPI'

$discoveryData = $api.CreateDiscoveryData(0, $SourceID, $ManagedEntityID)

$data = ""

[array] $allServers = @()

if(Test-Path $ConfigFilepath)

Page 44: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

{

[array] $contents = get-content $ConfigFilepath

$rms=get-itemproperty -path "HKLM:\SOFTWARE\Microsoft\Microsoft Operations

Manager\3.0\Machine Settings\" |% {$_.DefaultSDKServiceMachine}

if ((Get-PSSnapin | Where-Object {$_.Name -eq

'Microsoft.EnterpriseManagement.OperationsManager.Client'}) -eq $null) {

Add-PSSnapin Microsoft.EnterpriseManagement.OperationsManager.Client -ErrorAction

SilentlyContinue -ErrorVariable Err

if ($Err) { $(throw write-Host $Err) }

}

Set-Location "OperationsManagerMonitoring::" -ErrorVariable errSnapin ;

new-managementGroupConnection -ConnectionString:$rms -ErrorVariable errSnapin ;

Set-Location $rms -ErrorVariable errSnapin ;

$contents | ForEach-Object{

[string[]] $splitstring = '","'

[StringSplitOptions]$option = "None"

[array] $data = $_.split($splitstring,$option)

$msg = "Adding instance for "+$data[3]

if($data[3] -ne "SERVER"){

#write-eventlog -logname "Operations Manager" -Source "Health Service Script"

-EventID 6002 -Message $msg -EntryType Information

if($data[3] -ne "ALL_HPUX_SERVERS"){

$mo = get-monitoringclass | where {$_.name -eq

'Microsoft.HPUX.Computer'} | get-monitoringobject | where

{(($_.DisplayName).toLower()).contains($data[3].toLower())}

if ($mo -ne $null) {

Page 45: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

write-eventlog -logname "Operations Manager" -Source "Health

Service Script" -EventID 6003 -Message $mo.DisplayName -EntryType Information

$oInst =

$discoveryData.CreateClassInstance("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.Confi

gData']$")

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

AlertKey$", $data[2])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

ProcessNamePattern$", $data[4])

$oInst.AddProperty("$MPElement[Name='System!System.Entity']/DisplayName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

ProcessMinCount$", $data[5])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

ProcessMaxCount$", $data[6])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

MonitoringInterval$", $data[7])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

RaiseAlert$", $data[8])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

RaisePerfAlert$", $data[9])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

CollectProcessPerfData$", $data[10])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

CPUWarnThreshold$", $data[11])

Page 46: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

CPUCriticalThreshold$", $data[12])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

MemoryWarnThreshold$", $data[13])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

MemoryCriticalThreshold$", $data[14])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

PerfmonInterval$", $data[15])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

ProcessName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

Hostname$", $mo.DisplayName)

$oInst.AddProperty("$MPElement[Name='MicrosoftUnixLibrary!Microsoft.Unix.Computer']/Prin

cipalName$", $mo.DisplayName)

$discoveryData.AddInstance($oInst)

}

}

else{

$mo = get-monitoringclass | where {$_.name -eq

'Microsoft.HPUX.Computer'} | get-monitoringobject

$mo | ForEach-Object {

write-eventlog -logname "Operations Manager" -Source "Health

Service Script" -EventID 6003 -Message $_.DisplayName -EntryType Information

$oInst =

$discoveryData.CreateClassInstance("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.Confi

gData']$")

Page 47: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

AlertKey$", $data[2])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

ProcessNamePattern$", $data[4])

$oInst.AddProperty("$MPElement[Name='System!System.Entity']/DisplayName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

ProcessMinCount$", $data[5])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

ProcessMaxCount$", $data[6])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

MonitoringInterval$", $data[7])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

RaiseAlert$", $data[8])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

RaisePerfAlert$", $data[9])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

CollectProcessPerfData$", $data[10])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

CPUWarnThreshold$", $data[11])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

CPUCriticalThreshold$", $data[12])

Page 48: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

MemoryWarnThreshold$", $data[13])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

MemoryCriticalThreshold$", $data[14])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

PerfmonInterval$", $data[15])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

ProcessName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.HPUX.ConfigData']/

Hostname$", $_.DisplayName)

$oInst.AddProperty("$MPElement[Name='MicrosoftUnixLibrary!Microsoft.Unix.Computer']/Prin

cipalName$", $_.DisplayName)

$discoveryData.AddInstance($oInst)

}

}

}

}

}

$discoveryData

Remove-variable api

Remove-variable discoveryData

]]></ScriptBody>

<Parameters>

Page 49: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Parameter>

<Name>SourceID</Name>

<Value>$MPElement$</Value>

</Parameter>

<Parameter>

<Name>ManagedEntityID</Name>

<Value>$Target/Id$</Value>

</Parameter>

<Parameter>

<Name>ConfigFilepath</Name>

<Value>$Config/ConfigFilePath$</Value>

</Parameter>

</Parameters>

<TimeoutSeconds>300</TimeoutSeconds>

</ProbeAction>

</MemberModules>

<Composition>

<Node ID="PSDisco">

<Node ID="DiscoSc" />

</Node>

</Composition>

</Composite>

</ModuleImplementation>

<OutputType>System!System.Discovery.Data</OutputType>

</DataSourceModuleType>

Page 50: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<DataSourceModuleType ID="Custom.Unix.Process.Monitoring.DataSource.ReadConfig.RHEL"

Accessibility="Internal" Batching="false">

<Configuration>

<xsd:element minOccurs="1" name="Interval" type="xsd:integer" />

<xsd:element minOccurs="0" name="SyncTime" type="xsd:string" />

<xsd:element minOccurs="1" name="ConfigFilePath" type="xsd:string" />

</Configuration>

<OverrideableParameters>

<OverrideableParameter ID="Interval" Selector="$Config/Interval$" ParameterType="int" />

<OverrideableParameter ID="ConfigPath" Selector="$Config/ConfigFilePath$"

ParameterType="string" />

</OverrideableParameters>

<ModuleImplementation Isolation="Any">

<Composite>

<MemberModules>

<DataSource ID="DSchedl" TypeID="System!System.Discovery.Scheduler">

<Scheduler>

<SimpleReccuringSchedule>

<Interval>$Config/Interval$</Interval>

<SyncTime>$Config/SyncTime$</SyncTime>

</SimpleReccuringSchedule>

<ExcludeDates />

</Scheduler>

</DataSource>

<ProbeAction ID="PSDic" TypeID="Windows!Microsoft.Windows.PowerShellDiscoveryProbe">

<ScriptName>ReadProcMonConfigRHEL.ps1</ScriptName>

Page 51: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ScriptBody><![CDATA[param (

[string] $ConfigFilepath,

[string] $ManagedEntityID,

[string] $SourceID

)

$api = New-Object -comObject 'Mom.ScriptAPI'

$discoveryData = $api.CreateDiscoveryData(0, $SourceID, $ManagedEntityID)

$data = ""

[array] $allServers = @()

if(Test-Path $ConfigFilepath)

{

[array] $contents = get-content $ConfigFilepath

$rms=get-itemproperty -path "HKLM:\SOFTWARE\Microsoft\Microsoft Operations

Manager\3.0\Machine Settings\" |% {$_.DefaultSDKServiceMachine}

if ((Get-PSSnapin | Where-Object {$_.Name -eq

'Microsoft.EnterpriseManagement.OperationsManager.Client'}) -eq $null) {

Add-PSSnapin Microsoft.EnterpriseManagement.OperationsManager.Client -ErrorAction

SilentlyContinue -ErrorVariable Err

if ($Err) { $(throw write-Host $Err) }

}

Set-Location "OperationsManagerMonitoring::" -ErrorVariable errSnapin ;

new-managementGroupConnection -ConnectionString:$rms -ErrorVariable errSnapin ;

Set-Location $rms -ErrorVariable errSnapin ;

Page 52: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$contents | ForEach-Object{

[string[]] $splitstring = '","'

[StringSplitOptions]$option = "None"

[array] $data = $_.split($splitstring,$option)

$msg = "Adding instance for "+$data[3]

if($data[3] -ne "SERVER"){

#write-eventlog -logname "Operations Manager" -Source "Health Service Script"

-EventID 6002 -Message $msg -EntryType Information

if($data[3] -ne "ALL_LINUX_SERVERS"){

$mo = get-monitoringclass | where {$_.name -eq

'Microsoft.Linux.Computer'} | get-monitoringobject | where

{(($_.DisplayName).toLower()).contains($data[3].toLower())}

if ($mo -ne $null) {

write-eventlog -logname "Operations Manager" -Source "Health

Service Script" -EventID 6003 -Message $mo.DisplayName -EntryType Information

$oInst =

$discoveryData.CreateClassInstance("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.Confi

gData']$")

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

AlertKey$", $data[2])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

rocessNamePattern$", $data[4])

$oInst.AddProperty("$MPElement[Name='System!System.Entity']/DisplayName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

rocessMinCount$", $data[5])

Page 53: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

rocessMaxCount$", $data[6])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

MonitoringInterval$", $data[7])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

RaiseAlert$", $data[8])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

RaisePerfAlert$", $data[9])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/C

ollectProcessPerfData$", $data[10])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/C

PUWarnThreshold$", $data[11])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/C

PUCriticalThreshold$", $data[12])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

MemoryWarnThreshold$", $data[13])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

MemoryCriticalThreshold$", $data[14])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

erfmonInterval$", $data[15])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

rocessName$", $data[16])

Page 54: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

Hostname$", $mo.DisplayName)

$oInst.AddProperty("$MPElement[Name='MicrosoftUnixLibrary!Microsoft.Unix.Computer']/Prin

cipalName$", $mo.DisplayName)

$discoveryData.AddInstance($oInst)

}

}

else{

$mo = get-monitoringclass | where {$_.name -eq

'Microsoft.Linux.Computer'} | get-monitoringobject

$mo | ForEach-Object {

write-eventlog -logname "Operations Manager" -Source "Health

Service Script" -EventID 6003 -Message $_.DisplayName -EntryType Information

$oInst =

$discoveryData.CreateClassInstance("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.Confi

gData']$")

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

AlertKey$", $data[2])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

rocessNamePattern$", $data[4])

$oInst.AddProperty("$MPElement[Name='System!System.Entity']/DisplayName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

rocessMinCount$", $data[5])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

rocessMaxCount$", $data[6])

Page 55: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

MonitoringInterval$", $data[7])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

RaiseAlert$", $data[8])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

RaisePerfAlert$", $data[9])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/C

ollectProcessPerfData$", $data[10])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/C

PUWarnThreshold$", $data[11])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/C

PUCriticalThreshold$", $data[12])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

MemoryWarnThreshold$", $data[13])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

MemoryCriticalThreshold$", $data[14])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

erfmonInterval$", $data[15])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/P

rocessName$", $data[16])

$oInst.AddProperty("$MPElement[Name='Custom.Unix.Process.Monitoring.RHEL.ConfigData']/

Hostname$", $_.DisplayName)

Page 56: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

$oInst.AddProperty("$MPElement[Name='MicrosoftUnixLibrary!Microsoft.Unix.Computer']/Prin

cipalName$", $_.DisplayName)

$discoveryData.AddInstance($oInst)

}

}

}

}

}

$discoveryData

Remove-variable api

Remove-variable discoveryData

]]></ScriptBody>

<Parameters>

<Parameter>

<Name>SourceID</Name>

<Value>$MPElement$</Value>

</Parameter>

<Parameter>

<Name>ManagedEntityID</Name>

<Value>$Target/Id$</Value>

</Parameter>

<Parameter>

<Name>ConfigFilepath</Name>

<Value>$Config/ConfigFilePath$</Value>

</Parameter>

Page 57: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Parameters>

<TimeoutSeconds>300</TimeoutSeconds>

</ProbeAction>

</MemberModules>

<Composition>

<Node ID="PSDic">

<Node ID="DSchedl" />

</Node>

</Composition>

</Composite>

</ModuleImplementation>

<OutputType>System!System.Discovery.Data</OutputType>

</DataSourceModuleType>

<DataSourceModuleType ID="Custom.Unix.Process.Monitoring.DataSource.RunShellCommand"

Accessibility="Internal" Batching="false">

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="0" name="SyncTime" type="xsd:string" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="ShellCommand" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:string" />

</Configuration>

<OverrideableParameters>

<OverrideableParameter ID="Interval" Selector="$Config/IntervalSeconds$" ParameterType="int"

/>

</OverrideableParameters>

Page 58: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ModuleImplementation Isolation="Any">

<Composite>

<MemberModules>

<DataSource ID="Sched" TypeID="System!System.SimpleScheduler">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<SyncTime>$Config/SyncTime$</SyncTime>

</DataSource>

<ProbeAction ID="WSMAN"

TypeID="MicrosoftUnixLibrary!Microsoft.Unix.WSMan.Invoke.ProbeAction">

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<Uri>http://schemas.microsoft.com/wbem/wscim/1/cim-

schema/2/SCX_OperatingSystem?__cimnamespace=root/scx</Uri>

<Selector />

<InvokeAction>ExecuteShellCommand</InvokeAction>

<Input><![CDATA[<p:ExecuteShellCommand_INPUT

xmlns:p="http://schemas.microsoft.com/wbem/wscim/1/cim-

schema/2/SCX_OperatingSystem"><p:command>$Config/ShellCommand$</p:command><p:timeout>$

Config/Timeout$</p:timeout></p:ExecuteShellCommand_INPUT>]]></Input>

</ProbeAction>

</MemberModules>

<Composition>

<Node ID="WSMAN">

<Node ID="Sched" />

</Node>

</Composition>

</Composite>

</ModuleImplementation>

Page 59: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<OutputType>MicrosoftSystemCenterWSManagementLibrary!Microsoft.SystemCenter.WSManagement

.WSManData</OutputType>

</DataSourceModuleType>

</ModuleTypes>

<MonitorTypes>

<UnitMonitorType ID="Custom.Unix.Process.Monitoring.ProcMon.MonitorType"

Accessibility="Internal">

<MonitorTypeStates>

<MonitorTypeState ID="ERROR" NoDetection="false" />

<MonitorTypeState ID="SUCCESS" NoDetection="false" />

</MonitorTypeStates>

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="RaiseAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="ProcessMinCount" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessMaxCount" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

</Configuration>

<MonitorImplementation>

<MemberModules>

<DataSource ID="ProcMon"

TypeID="Custom.Unix.Process.Monitoring.DataSource.MonitorProcess">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<RaiseAlert>$Config/RaiseAlert$</RaiseAlert>

Page 60: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ProcessMinCount>$Config/ProcessMinCount$</ProcessMinCount>

<ProcessMaxCount>$Config/ProcessMaxCount$</ProcessMaxCount>

<ProcessNamePattern>$Config/ProcessNamePattern$</ProcessNamePattern>

</DataSource>

<ConditionDetection ID="CriticalFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery>Property[@Name='Description']</XPathQuery>

</ValueExpression>

<Operator>NotEqual</Operator>

<ValueExpression>

<Value>No match</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="HealthyFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery>Property[@Name='Description']</XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

Page 61: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Value Type="String">No match</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

</MemberModules>

<RegularDetections>

<RegularDetection MonitorTypeStateID="ERROR">

<Node ID="CriticalFilter">

<Node ID="ProcMon" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="SUCCESS">

<Node ID="HealthyFilter">

<Node ID="ProcMon" />

</Node>

</RegularDetection>

</RegularDetections>

</MonitorImplementation>

</UnitMonitorType>

<UnitMonitorType ID="Custom.Unix.Process.Monitoring.ProcPerfMon.AIX.CPU.MonitorType"

Accessibility="Internal">

<MonitorTypeStates>

<MonitorTypeState ID="Critical" NoDetection="false" />

<MonitorTypeState ID="Warning" NoDetection="false" />

<MonitorTypeState ID="Success" NoDetection="false" />

Page 62: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</MonitorTypeStates>

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

<xsd:element minOccurs="1" name="CollectProcessPerfData" type="xsd:string" />

<xsd:element minOccurs="1" name="RaisePerfAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="CPUWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="CPUCriticalThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemCriticalThreshold" type="xsd:integer" />

</Configuration>

<MonitorImplementation>

<MemberModules>

<DataSource ID="Ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.AIX">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<Timeout>$Config/Timeout$</Timeout>

<ProcessNamePattern>$Config/ProcessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Config/CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Config/RaisePerfAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Config/CPUWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Config/CPUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Config/MemWarnThreshold$</MemWarnThreshold>

Page 63: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<MemCriticalThreshold>$Config/MemCriticalThreshold$</MemCriticalThreshold>

</DataSource>

<ConditionDetection ID="CriticalFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedCPUState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Critical</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="WarningFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedCPUState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Warning</Value>

</ValueExpression>

Page 64: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="SuccessFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedCPUState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Success</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

</MemberModules>

<RegularDetections>

<RegularDetection MonitorTypeStateID="Critical">

<Node ID="CriticalFilter">

<Node ID="Ds" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Warning">

<Node ID="WarningFilter">

Page 65: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Node ID="Ds" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Success">

<Node ID="SuccessFilter">

<Node ID="Ds" />

</Node>

</RegularDetection>

</RegularDetections>

</MonitorImplementation>

</UnitMonitorType>

<UnitMonitorType ID="Custom.Unix.Process.Monitoring.ProcPerfMon.AIX.Mem.MonitorType"

Accessibility="Internal">

<MonitorTypeStates>

<MonitorTypeState ID="Critical" NoDetection="false" />

<MonitorTypeState ID="Warning" NoDetection="false" />

<MonitorTypeState ID="Success" NoDetection="false" />

</MonitorTypeStates>

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

<xsd:element minOccurs="1" name="CollectProcessPerfData" type="xsd:string" />

<xsd:element minOccurs="1" name="RaisePerfAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="CPUWarnThreshold" type="xsd:integer" />

Page 66: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<xsd:element minOccurs="1" name="CPUCriticalThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemCriticalThreshold" type="xsd:integer" />

</Configuration>

<MonitorImplementation>

<MemberModules>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.AIX">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<Timeout>$Config/Timeout$</Timeout>

<ProcessNamePattern>$Config/ProcessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Config/CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Config/RaisePerfAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Config/CPUWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Config/CPUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Config/MemWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Config/MemCriticalThreshold$</MemCriticalThreshold>

</DataSource>

<ConditionDetection ID="CriticalFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedMemoryState']</XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

Page 67: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ValueExpression>

<Value Type="String">Critical</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="WarningFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedMemoryState']</XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Warning</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="SuccessFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedMemoryState']</XPathQuery>

</ValueExpression>

Page 68: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Success</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

</MemberModules>

<RegularDetections>

<RegularDetection MonitorTypeStateID="Critical">

<Node ID="CriticalFilter">

<Node ID="ds" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Warning">

<Node ID="WarningFilter">

<Node ID="ds" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Success">

<Node ID="SuccessFilter">

<Node ID="ds" />

</Node>

</RegularDetection>

</RegularDetections>

Page 69: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</MonitorImplementation>

</UnitMonitorType>

<UnitMonitorType ID="Custom.Unix.Process.Monitoring.ProcPerfMon.HPUX.CPU.MonitorType"

Accessibility="Internal">

<MonitorTypeStates>

<MonitorTypeState ID="Critical" NoDetection="false" />

<MonitorTypeState ID="Warning" NoDetection="false" />

<MonitorTypeState ID="Success" NoDetection="false" />

</MonitorTypeStates>

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

<xsd:element minOccurs="1" name="CollectProcessPerfData" type="xsd:string" />

<xsd:element minOccurs="1" name="RaisePerfAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="CPUWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="CPUCriticalThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemCriticalThreshold" type="xsd:integer" />

</Configuration>

<MonitorImplementation>

<MemberModules>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.HPUX">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

Page 70: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<Timeout>$Config/Timeout$</Timeout>

<ProcessNamePattern>$Config/ProcessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Config/CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Config/RaisePerfAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Config/CPUWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Config/CPUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Config/MemWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Config/MemCriticalThreshold$</MemCriticalThreshold>

</DataSource>

<ConditionDetection ID="CriticalFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedCPUState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Critical</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="WarningFilter" TypeID="System!System.ExpressionFilter">

<Expression>

Page 71: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedCPUState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Warning</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="SuccessFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedCPUState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Success</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

</MemberModules>

Page 72: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<RegularDetections>

<RegularDetection MonitorTypeStateID="Critical">

<Node ID="CriticalFilter">

<Node ID="ds" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Warning">

<Node ID="WarningFilter">

<Node ID="ds" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Success">

<Node ID="SuccessFilter">

<Node ID="ds" />

</Node>

</RegularDetection>

</RegularDetections>

</MonitorImplementation>

</UnitMonitorType>

<UnitMonitorType ID="Custom.Unix.Process.Monitoring.ProcPerfMon.HPUX.Mem.MonitorType"

Accessibility="Internal">

<MonitorTypeStates>

<MonitorTypeState ID="Critical" NoDetection="false" />

<MonitorTypeState ID="Warning" NoDetection="false" />

<MonitorTypeState ID="Success" NoDetection="false" />

</MonitorTypeStates>

Page 73: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

<xsd:element minOccurs="1" name="CollectProcessPerfData" type="xsd:string" />

<xsd:element minOccurs="1" name="RaisePerfAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="CPUWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="CPUCriticalThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemCriticalThreshold" type="xsd:integer" />

</Configuration>

<MonitorImplementation>

<MemberModules>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.HPUX">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<Timeout>$Config/Timeout$</Timeout>

<ProcessNamePattern>$Config/ProcessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Config/CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Config/RaisePerfAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Config/CPUWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Config/CPUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Config/MemWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Config/MemCriticalThreshold$</MemCriticalThreshold>

Page 74: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DataSource>

<ConditionDetection ID="CriticalFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedMemoryState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Critical</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="WarningFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedMemoryState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Warning</Value>

</ValueExpression>

</SimpleExpression>

Page 75: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Expression>

</ConditionDetection>

<ConditionDetection ID="SuccessFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedMemoryState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Success</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

</MemberModules>

<RegularDetections>

<RegularDetection MonitorTypeStateID="Critical">

<Node ID="CriticalFilter">

<Node ID="ds" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Warning">

<Node ID="WarningFilter">

<Node ID="ds" />

Page 76: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Success">

<Node ID="SuccessFilter">

<Node ID="ds" />

</Node>

</RegularDetection>

</RegularDetections>

</MonitorImplementation>

</UnitMonitorType>

<UnitMonitorType ID="Custom.Unix.Process.Monitoring.ProcPerfMon.RHEL.CPU.MonitorType"

Accessibility="Internal">

<MonitorTypeStates>

<MonitorTypeState ID="Critical" NoDetection="false" />

<MonitorTypeState ID="Warning" NoDetection="false" />

<MonitorTypeState ID="Success" NoDetection="false" />

</MonitorTypeStates>

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

<xsd:element minOccurs="1" name="CollectProcessPerfData" type="xsd:string" />

<xsd:element minOccurs="1" name="RaisePerfAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="CPUWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="CPUCriticalThreshold" type="xsd:integer" />

Page 77: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<xsd:element minOccurs="1" name="MemWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemCriticalThreshold" type="xsd:integer" />

</Configuration>

<MonitorImplementation>

<MemberModules>

<DataSource ID="DS"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RHEL">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

<Timeout>$Config/Timeout$</Timeout>

<ProcessNamePattern>$Config/ProcessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Config/CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Config/RaisePerfAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Config/CPUWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Config/CPUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Config/MemWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Config/MemCriticalThreshold$</MemCriticalThreshold>

</DataSource>

<ConditionDetection ID="CriticalFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedCPUState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

Page 78: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Value Type="String">Critical</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="WarningFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedCPUState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Warning</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="SuccessFilter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedCPUState'] </XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

Page 79: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ValueExpression>

<Value Type="String">Success</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

</MemberModules>

<RegularDetections>

<RegularDetection MonitorTypeStateID="Critical">

<Node ID="CriticalFilter">

<Node ID="DS" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Warning">

<Node ID="WarningFilter">

<Node ID="DS" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Success">

<Node ID="SuccessFilter">

<Node ID="DS" />

</Node>

</RegularDetection>

</RegularDetections>

</MonitorImplementation>

Page 80: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</UnitMonitorType>

<UnitMonitorType ID="Custom.Unix.Process.Monitoring.ProcPerfMon.RHEL.Mem.MonitorType"

Accessibility="Internal">

<MonitorTypeStates>

<MonitorTypeState ID="Critical" NoDetection="false" />

<MonitorTypeState ID="Warning" NoDetection="false" />

<MonitorTypeState ID="Success" NoDetection="false" />

</MonitorTypeStates>

<Configuration>

<xsd:element minOccurs="1" name="IntervalSeconds" type="xsd:integer" />

<xsd:element minOccurs="1" name="TargetSystem" type="xsd:string" />

<xsd:element minOccurs="1" name="Timeout" type="xsd:integer" />

<xsd:element minOccurs="1" name="ProcessNamePattern" type="xsd:string" />

<xsd:element minOccurs="1" name="CollectProcessPerfData" type="xsd:string" />

<xsd:element minOccurs="1" name="RaisePerfAlert" type="xsd:string" />

<xsd:element minOccurs="1" name="CPUWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="CPUCriticalThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemWarnThreshold" type="xsd:integer" />

<xsd:element minOccurs="1" name="MemCriticalThreshold" type="xsd:integer" />

</Configuration>

<MonitorImplementation>

<MemberModules>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RHEL">

<IntervalSeconds>$Config/IntervalSeconds$</IntervalSeconds>

<TargetSystem>$Config/TargetSystem$</TargetSystem>

Page 81: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Timeout>$Config/Timeout$</Timeout>

<ProcessNamePattern>$Config/ProcessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Config/CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Config/RaisePerfAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Config/CPUWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Config/CPUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Config/MemWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Config/MemCriticalThreshold$</MemCriticalThreshold>

</DataSource>

<ConditionDetection ID="CriticalExpr" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedMemoryState']</XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Critical</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="WarningExpr" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

Page 82: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedMemoryState']</XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Warning</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<ConditionDetection ID="SuccessExpr" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery Type="String">Property[@Name='UsedMemoryState']</XPathQuery>

</ValueExpression>

<Operator>Equal</Operator>

<ValueExpression>

<Value Type="String">Success</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

</MemberModules>

<RegularDetections>

Page 83: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<RegularDetection MonitorTypeStateID="Critical">

<Node ID="CriticalExpr">

<Node ID="ds" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Warning">

<Node ID="WarningExpr">

<Node ID="ds" />

</Node>

</RegularDetection>

<RegularDetection MonitorTypeStateID="Success">

<Node ID="SuccessExpr">

<Node ID="ds" />

</Node>

</RegularDetection>

</RegularDetections>

</MonitorImplementation>

</UnitMonitorType>

</MonitorTypes>

</TypeDefinitions>

<Monitoring>

<Discoveries>

<Discovery ID="Custom.Unix.Process.Monitoring.Discovery.ReadConfigFile.AIX" Enabled="false"

Target="SC!Microsoft.SystemCenter.ManagementServer" ConfirmDelivery="true" Remotable="true"

Priority="Normal">

<Category>Discovery</Category>

Page 84: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<DiscoveryTypes>

<DiscoveryClass TypeID="Custom.Unix.Process.Monitoring.AIX.ConfigData" />

</DiscoveryTypes>

<DataSource ID="DSAIX" TypeID="Custom.Unix.Process.Monitoring.DataSource.ReadConfig.AIX">

<Interval>600</Interval>

<ConfigFilePath>\\xxxx\Unix_Process_Monitoring_Config.csv</ConfigFilePath>

</DataSource>

</Discovery>

<Discovery ID="Custom.Unix.Process.Monitoring.Discovery.ReadConfigFile.HPUX" Enabled="false"

Target="SC!Microsoft.SystemCenter.ManagementServer" ConfirmDelivery="true" Remotable="true"

Priority="Normal">

<Category>Discovery</Category>

<DiscoveryTypes>

<DiscoveryClass TypeID="Custom.Unix.Process.Monitoring.HPUX.ConfigData" />

</DiscoveryTypes>

<DataSource ID="MDHPUX"

TypeID="Custom.Unix.Process.Monitoring.DataSource.ReadConfig.HPUX">

<Interval>600</Interval>

<ConfigFilePath>\\xxxx\Unix_Process_Monitoring_Config.csv</ConfigFilePath>

</DataSource>

</Discovery>

<Discovery ID="Custom.Unix.Process.Monitoring.Discovery.ReadConfigFile.RHEL" Enabled="false"

Target="SC!Microsoft.SystemCenter.ManagementServer" ConfirmDelivery="true" Remotable="true"

Priority="Normal">

<Category>Discovery</Category>

<DiscoveryTypes>

<DiscoveryClass TypeID="Custom.Unix.Process.Monitoring.RHEL.ConfigData" />

Page 85: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DiscoveryTypes>

<DataSource ID="MDRHEL"

TypeID="Custom.Unix.Process.Monitoring.DataSource.ReadConfig.RHEL">

<Interval>600</Interval>

<ConfigFilePath>\\xxxx\Unix_Process_Monitoring_Config_2.csv</ConfigFilePath>

</DataSource>

</Discovery>

</Discoveries>

<Rules>

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.AvgCPUUsed.AIX" Enabled="true"

Target="Custom.Unix.Process.Monitoring.AIX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.AIX">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/PerfmonI

nterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Proc

essNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/C

ollectProcessPerfData$</CollectProcessPerfData>

Page 86: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/RaisePerfAl

ert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

CriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="map"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>CPU</ObjectName>

<CounterName><![CDATA[Avg %CPU Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

<Value>$Data/Property[@Name='Avg_CPU_Used_AIX']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="W2DB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="W2DW"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

Page 87: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.AvgCPUUsed.HPUX" Enabled="true"

Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="DS"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.HPUX">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/RaisePer

fAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/CP

UWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/C

PUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

Page 88: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="mapper"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>CPU</ObjectName>

<CounterName><![CDATA[Avg %CPU Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

<Value>$Data/Property[@Name='Avg_CPU_Used_HPUX']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="w2db" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="w2dw"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.AvgCPUUsed.RHEL" Enabled="true"

Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="perfRHEL"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RHEL">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

Page 89: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/RaisePerf

Alert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CP

UCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="perfdatamapper"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>CPU</ObjectName>

<CounterName><![CDATA[Avg %CPU Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

Page 90: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Value>$Data/Property[@Name='Avg_CPU_Used_Linux']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="Write2DB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="Write2DW"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.AvgMemUsed.AIX" Enabled="true"

Target="Custom.Unix.Process.Monitoring.AIX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="DS"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.AIX">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/PerfmonI

nterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Proc

essNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/C

ollectProcessPerfData$</CollectProcessPerfData>

Page 91: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/RaisePerfAl

ert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

CriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="map"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>Memory</ObjectName>

<CounterName><![CDATA[Avg %Memory Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

<Value>$Data/Property[@Name='Avg_Memory_Used_AIX']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="w2db" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="w2dw"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

Page 92: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.AvgMemUsed.HPUX" Enabled="true"

Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.HPUX">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/RaisePer

fAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/CP

UWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/C

PUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

Page 93: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="map"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>Memory</ObjectName>

<CounterName><![CDATA[Avg %Memory Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

<Value>$Data/Property[@Name='Avg_Memory_Used_HPUX']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="w2db" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="w2dw"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.AvgMemUsed.RHEL" Enabled="true"

Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="dsperf"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RHEL">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

Page 94: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/RaisePerf

Alert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CP

UCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="mapper"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>Memory</ObjectName>

<CounterName><![CDATA[Avg %Memory Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

Page 95: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Value>$Data/Property[@Name='Avg_Memory_Used_Linux']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="Write2DB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="Write2DW"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.MaxCPUUsed.AIX" Enabled="true"

Target="Custom.Unix.Process.Monitoring.AIX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.AIX">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/PerfmonI

nterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Proc

essNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/C

ollectProcessPerfData$</CollectProcessPerfData>

Page 96: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/RaisePerfAl

ert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

CriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="map"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>CPU</ObjectName>

<CounterName><![CDATA[Max %CPU Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

<Value>$Data/Property[@Name='Max_CPU_Used_AIX']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="w2db" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="w2dw"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

Page 97: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.MaxCPUUsed.HPUX" Enabled="true"

Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.HPUX">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/RaisePer

fAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/CP

UWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/C

PUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

Page 98: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="mapper"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>CPU</ObjectName>

<CounterName><![CDATA[Max %CPU Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

<Value>$Data/Property[@Name='Max_CPU_Used_HPUX']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="w2db" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="w2dw"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.MaxCPUUsed.RHEL" Enabled="true"

Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="perfds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RHEL">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

Page 99: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/RaisePerf

Alert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CP

UCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="map"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>CPU</ObjectName>

<CounterName><![CDATA[Max %CPU Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

Page 100: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Value>$Data/Property[@Name='Max_CPU_Used_Linux']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="Wirte2DB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="Write2DW"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.MaxMemUsed.AIX" Enabled="true"

Target="Custom.Unix.Process.Monitoring.AIX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.AIX">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/PerfmonI

nterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Proc

essNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/C

ollectProcessPerfData$</CollectProcessPerfData>

Page 101: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/RaisePerfAl

ert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

CriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="mp"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>Memory</ObjectName>

<CounterName><![CDATA[Max %Memory Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

<Value>$Data/Property[@Name='Max_Memory_Used_AIX']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="w2db" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="w2dw"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

Page 102: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.MaxMemUsed.HPUX" Enabled="true"

Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.HPUX">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/RaisePer

fAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/CP

UWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/C

PUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

Page 103: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="Map"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>Memory</ObjectName>

<CounterName><![CDATA[Max %Memory Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

<Value>$Data/Property[@Name='Max_Memory_Used_HPUX']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="w2db" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="w2dw"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.MaxMemUsed.RHEL" Enabled="true"

Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="ds"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RHEL">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

Page 104: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/RaisePerf

Alert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CP

UCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</DataSource>

</DataSources>

<ConditionDetection ID="map"

TypeID="SystemPerformanceLibrary!System.Performance.DataGenericMapper">

<ObjectName>Memory</ObjectName>

<CounterName><![CDATA[Max %Memory Used]]></CounterName>

<InstanceName>$Target/Property[Type="System!System.Entity"]/DisplayName$</InstanceName>

Page 105: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Value>$Data/Property[@Name='Max_Memory_Used_Linux']$</Value>

</ConditionDetection>

<WriteActions>

<WriteAction ID="Write2DB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData" />

<WriteAction ID="Write2DW"

TypeID="MicrosoftSystemCenterDataWarehouseLibrary!Microsoft.SystemCenter.DataWarehouse.Publis

hPerformanceData" />

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.PerfMon.RunTOP.HPUX" Enabled="true"

Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="RunTOPDS"

TypeID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RunTop.HPUX">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

</DataSource>

</DataSources>

<ConditionDetection ID="eventMapper" TypeID="System!System.Event.GenericDataMapper">

<EventOriginId>$Target/Id$</EventOriginId>

<PublisherId>$MPElement$</PublisherId>

<PublisherName>SCOM</PublisherName>

Page 106: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Channel>SCOM</Channel>

<LoggingComputer>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Pri

ncipalName$</LoggingComputer>

<EventNumber>0</EventNumber>

<EventCategory>0</EventCategory>

<EventLevel>0</EventLevel>

<UserName />

<Params>

<Param>$Target/Property[Type="System!System.Entity"]/DisplayName$</Param>

</Params>

</ConditionDetection>

<WriteActions>

<WriteAction ID="LogEvent" TypeID="SC!Microsoft.SystemCenter.CollectEvent" />

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.ProcessMon.AIX" Enabled="false"

Target="Custom.Unix.Process.Monitoring.AIX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="AIXDS" TypeID="Custom.Unix.Process.Monitoring.DataSource.MonitorProcess">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Monitori

ngInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

Page 107: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<RaiseAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/RaiseAlert$</R

aiseAlert>

<ProcessMinCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

MinCount$</ProcessMinCount>

<ProcessMaxCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

MaxCount$</ProcessMaxCount>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Proc

essNamePattern$</ProcessNamePattern>

</DataSource>

</DataSources>

<ConditionDetection ID="filter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery>Property[@Name='Description']</XPathQuery>

</ValueExpression>

<Operator>NotEqual</Operator>

<ValueExpression>

<Value>No match</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<WriteActions>

<WriteAction ID="AIXAlert" TypeID="Health!System.Health.GenerateAlert">

Page 108: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Priority>1</Priority>

<Severity>2</Severity>

<AlertMessageId>$MPElement[Name="AlertMessageID7000d72b32364140b1883fc16ada2fbe"]$</Alert

MessageId>

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/AlertKey

$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

Name$</AlertParameter2>

<AlertParameter3>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

MinCount$</AlertParameter3>

<AlertParameter4>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

MaxCount$</AlertParameter4>

</AlertParameters>

<Suppression>

<SuppressionValue>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Hostna

me$$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/AlertKey$$Target/Prop

erty[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/ProcessName$$Target/Property[Type="C

ustom.Unix.Process.Monitoring.AIX.ConfigData"]/ProcessNamePattern$</SuppressionValue>

</Suppression>

</WriteAction>

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.ProcessMon.HPUX" Enabled="false"

Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

Page 109: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Category>Custom</Category>

<DataSources>

<DataSource ID="ProcMonHPUX"

TypeID="Custom.Unix.Process.Monitoring.DataSource.MonitorProcess">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Monito

ringInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<RaiseAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/RaiseAlert$<

/RaiseAlert>

<ProcessMinCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proce

ssMinCount$</ProcessMinCount>

<ProcessMaxCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proc

essMaxCount$</ProcessMaxCount>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

</DataSource>

</DataSources>

<ConditionDetection ID="fltr" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery>Property[@Name='Description']</XPathQuery>

</ValueExpression>

<Operator>NotEqual</Operator>

Page 110: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ValueExpression>

<Value>No match</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<WriteActions>

<WriteAction ID="Alert" TypeID="Health!System.Health.GenerateAlert">

<Priority>1</Priority>

<Severity>2</Severity>

<AlertMessageId>$MPElement[Name="AlertMessageID50dafac6df9941c5aaf6c586c9beedef"]$</Alert

MessageId>

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/AlertK

ey$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proces

sName$</AlertParameter2>

<AlertParameter3>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proces

sMinCount$</AlertParameter3>

<AlertParameter4>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proces

sMaxCount$</AlertParameter4>

</AlertParameters>

<Suppression>

<SuppressionValue>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Host

Page 111: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

name$$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/AlertKey$$Target/

Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/ProcessName$$Target/Property[T

ype="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/ProcessNamePattern$</SuppressionValue>

</Suppression>

</WriteAction>

</WriteActions>

</Rule>

<Rule ID="Custom.Unix.Process.Monitoring.ProcessMon.RHEL" Enabled="false"

Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData" ConfirmDelivery="true" Remotable="true"

Priority="Normal" DiscardLevel="100">

<Category>Custom</Category>

<DataSources>

<DataSource ID="rhelid" TypeID="Custom.Unix.Process.Monitoring.DataSource.MonitorProcess">

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Monito

ringInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<RaiseAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/RaiseAlert$</

RaiseAlert>

<ProcessMinCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proce

ssMinCount$</ProcessMinCount>

<ProcessMaxCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proce

ssMaxCount$</ProcessMaxCount>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

</DataSource>

Page 112: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DataSources>

<ConditionDetection ID="filter" TypeID="System!System.ExpressionFilter">

<Expression>

<SimpleExpression>

<ValueExpression>

<XPathQuery>Property[@Name='Description']</XPathQuery>

</ValueExpression>

<Operator>NotEqual</Operator>

<ValueExpression>

<Value>No match</Value>

</ValueExpression>

</SimpleExpression>

</Expression>

</ConditionDetection>

<WriteActions>

<WriteAction ID="alertrhel" TypeID="Health!System.Health.GenerateAlert">

<Priority>1</Priority>

<Severity>2</Severity>

<AlertMessageId>$MPElement[Name="AlertMessageID841bbd7451644957be8087eb9d2c11f2"]$</Aler

tMessageId>

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/AlertK

ey$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proces

sName$</AlertParameter2>

Page 113: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AlertParameter3>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proces

sMinCount$</AlertParameter3>

<AlertParameter4>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proces

sMaxCount$</AlertParameter4>

</AlertParameters>

<Suppression>

<SuppressionValue>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Hostn

ame$$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/AlertKey$$Target/Pr

operty[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/ProcessName$$Target/Property[Typ

e="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/ProcessNamePattern$</SuppressionValue>

</Suppression>

</WriteAction>

</WriteActions>

</Rule>

</Rules>

<Monitors>

<UnitMonitor ID="Custom.Unix.Process.Monitoring.ProcMonitor.AIX" Accessibility="Internal"

Enabled="true" Target="Custom.Unix.Process.Monitoring.AIX.ConfigData"

ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal"

TypeID="Custom.Unix.Process.Monitoring.ProcMon.MonitorType" ConfirmDelivery="true">

<Category>Custom</Category>

<AlertSettings

AlertMessage="Custom.Unix.Process.Monitoring.ProcMonitor.AIX_AlertMessageResourceID">

<AlertOnState>Error</AlertOnState>

<AutoResolve>true</AutoResolve>

<AlertPriority>Normal</AlertPriority>

<AlertSeverity>Error</AlertSeverity>

Page 114: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/AlertKey

$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

Name$</AlertParameter2>

<AlertParameter3>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

MinCount$</AlertParameter3>

<AlertParameter4>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

MaxCount$</AlertParameter4>

</AlertParameters>

</AlertSettings>

<OperationalStates>

<OperationalState ID="UIGeneratedOpStateId374f97e9f5fa42248968a096f847151c"

MonitorTypeStateID="ERROR" HealthState="Error" />

<OperationalState ID="UIGeneratedOpStateId0f79b74595f04294a95d1aa9f685b106"

MonitorTypeStateID="SUCCESS" HealthState="Success" />

</OperationalStates>

<Configuration>

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Monitori

ngInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<RaiseAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/RaiseAlert$</R

aiseAlert>

Page 115: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ProcessMinCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

MinCount$</ProcessMinCount>

<ProcessMaxCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

MaxCount$</ProcessMaxCount>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Proc

essNamePattern$</ProcessNamePattern>

</Configuration>

</UnitMonitor>

<UnitMonitor ID="Custom.Unix.Process.Monitoring.ProcMonitor.HPUX" Accessibility="Internal"

Enabled="true" Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal"

TypeID="Custom.Unix.Process.Monitoring.ProcMon.MonitorType" ConfirmDelivery="true">

<Category>Custom</Category>

<AlertSettings

AlertMessage="Custom.Unix.Process.Monitoring.ProcMonitor.HPUX_AlertMessageResourceID">

<AlertOnState>Error</AlertOnState>

<AutoResolve>true</AutoResolve>

<AlertPriority>Normal</AlertPriority>

<AlertSeverity>Error</AlertSeverity>

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/AlertK

ey$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proces

sName$</AlertParameter2>

<AlertParameter3>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proces

sMinCount$</AlertParameter3>

Page 116: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AlertParameter4>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proces

sMaxCount$</AlertParameter4>

</AlertParameters>

</AlertSettings>

<OperationalStates>

<OperationalState ID="UIGeneratedOpStateIdbb891a748bba4f7889418796591ce1d8"

MonitorTypeStateID="ERROR" HealthState="Error" />

<OperationalState ID="UIGeneratedOpStateId3c317a9b55a64521825089f57255c74b"

MonitorTypeStateID="SUCCESS" HealthState="Success" />

</OperationalStates>

<Configuration>

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Monito

ringInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<RaiseAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/RaiseAlert$<

/RaiseAlert>

<ProcessMinCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proce

ssMinCount$</ProcessMinCount>

<ProcessMaxCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proc

essMaxCount$</ProcessMaxCount>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

</Configuration>

</UnitMonitor>

Page 117: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<UnitMonitor ID="Custom.Unix.Process.Monitoring.ProcMonitor.RHEL" Accessibility="Internal"

Enabled="true" Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal"

TypeID="Custom.Unix.Process.Monitoring.ProcMon.MonitorType" ConfirmDelivery="true">

<Category>Custom</Category>

<AlertSettings

AlertMessage="Custom.Unix.Process.Monitoring.ProcMonitor.RHEL_AlertMessageResourceID">

<AlertOnState>Error</AlertOnState>

<AutoResolve>true</AutoResolve>

<AlertPriority>Normal</AlertPriority>

<AlertSeverity>Error</AlertSeverity>

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/AlertK

ey$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proces

sName$</AlertParameter2>

<AlertParameter3>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proces

sMinCount$</AlertParameter3>

<AlertParameter4>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proces

sMaxCount$</AlertParameter4>

</AlertParameters>

</AlertSettings>

<OperationalStates>

<OperationalState ID="UIGeneratedOpStateId329f4badc22a46f8b7c0e0dc2ca43c31"

MonitorTypeStateID="ERROR" HealthState="Error" />

<OperationalState ID="UIGeneratedOpStateIdb06f10c9404e4912835eaa27492e8ea3"

MonitorTypeStateID="SUCCESS" HealthState="Success" />

Page 118: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</OperationalStates>

<Configuration>

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Monito

ringInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<RaiseAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/RaiseAlert$</

RaiseAlert>

<ProcessMinCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proce

ssMinCount$</ProcessMinCount>

<ProcessMaxCount>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proce

ssMaxCount$</ProcessMaxCount>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

</Configuration>

</UnitMonitor>

<UnitMonitor ID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.AIX" Accessibility="Internal"

Enabled="true" Target="Custom.Unix.Process.Monitoring.AIX.ConfigData"

ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal"

TypeID="Custom.Unix.Process.Monitoring.ProcPerfMon.AIX.CPU.MonitorType"

ConfirmDelivery="true">

<Category>Custom</Category>

<AlertSettings

AlertMessage="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.AIX_AlertMessageResourceID">

<AlertOnState>Error</AlertOnState>

<AutoResolve>true</AutoResolve>

Page 119: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AlertPriority>Normal</AlertPriority>

<AlertSeverity>MatchMonitorHealth</AlertSeverity>

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/AlertKey

$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

Name$</AlertParameter2>

<AlertParameter3>$Data/Property[@Name='Max_CPU_Used_AIX']$</AlertParameter3>

</AlertParameters>

</AlertSettings>

<OperationalStates>

<OperationalState ID="UIGeneratedOpStateIdb23bbf4f4d034504a737eeed56b9314d"

MonitorTypeStateID="Critical" HealthState="Error" />

<OperationalState ID="UIGeneratedOpStateIdc0d3582fb2254a9cbe3788016194b297"

MonitorTypeStateID="Warning" HealthState="Warning" />

<OperationalState ID="UIGeneratedOpStateIda13eed3f77fd4b9a8d3aa22dd6051633"

MonitorTypeStateID="Success" HealthState="Success" />

</OperationalStates>

<Configuration>

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/PerfmonI

nterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Proc

essNamePattern$</ProcessNamePattern>

Page 120: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/C

ollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/RaisePerfAl

ert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

CriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryCriticalThreshold$</MemCriticalThreshold>

</Configuration>

</UnitMonitor>

<UnitMonitor ID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.HPUX" Accessibility="Internal"

Enabled="true" Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal"

TypeID="Custom.Unix.Process.Monitoring.ProcPerfMon.HPUX.CPU.MonitorType"

ConfirmDelivery="true">

<Category>Custom</Category>

<AlertSettings

AlertMessage="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.HPUX_AlertMessageResourceID">

<AlertOnState>Warning</AlertOnState>

<AutoResolve>true</AutoResolve>

<AlertPriority>Normal</AlertPriority>

<AlertSeverity>MatchMonitorHealth</AlertSeverity>

Page 121: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/AlertK

ey$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proces

sName$</AlertParameter2>

<AlertParameter3>$Data/Property[@Name='Max_CPU_Used_HPUX']$</AlertParameter3>

</AlertParameters>

</AlertSettings>

<OperationalStates>

<OperationalState ID="UIGeneratedOpStateIdcec6a19a0c0742a48f92196eec11fe51"

MonitorTypeStateID="Critical" HealthState="Error" />

<OperationalState ID="UIGeneratedOpStateId45e3693711284adbb2b7e02ee53ed0a6"

MonitorTypeStateID="Warning" HealthState="Warning" />

<OperationalState ID="UIGeneratedOpStateId3a5933bd3cf348249067a36cba8ecaca"

MonitorTypeStateID="Success" HealthState="Success" />

</OperationalStates>

<Configuration>

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

Page 122: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/RaisePer

fAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/CP

UWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/C

PUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</Configuration>

</UnitMonitor>

<UnitMonitor ID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.RHEL" Accessibility="Internal"

Enabled="true" Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal"

TypeID="Custom.Unix.Process.Monitoring.ProcPerfMon.RHEL.CPU.MonitorType"

ConfirmDelivery="true">

<Category>Custom</Category>

<AlertSettings

AlertMessage="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.RHEL_AlertMessageResourceID">

<AlertOnState>Warning</AlertOnState>

<AutoResolve>true</AutoResolve>

<AlertPriority>Normal</AlertPriority>

<AlertSeverity>MatchMonitorHealth</AlertSeverity>

Page 123: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/AlertK

ey$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proces

sName$</AlertParameter2>

<AlertParameter3>$Data/Property[@Name='Max_CPU_Used_Linux']$</AlertParameter3>

</AlertParameters>

</AlertSettings>

<OperationalStates>

<OperationalState ID="UIGeneratedOpStateId5f1ba05631714f00846087bb046775a4"

MonitorTypeStateID="Critical" HealthState="Error" />

<OperationalState ID="UIGeneratedOpStateId1478081235744cb593c9d6b8f12636ea"

MonitorTypeStateID="Warning" HealthState="Warning" />

<OperationalState ID="UIGeneratedOpStateIda24d5f597dda4fd889ca40633e6c9283"

MonitorTypeStateID="Success" HealthState="Success" />

</OperationalStates>

<Configuration>

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

Page 124: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/RaisePerf

Alert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CP

UCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</Configuration>

</UnitMonitor>

<UnitMonitor ID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.AIX" Accessibility="Internal"

Enabled="true" Target="Custom.Unix.Process.Monitoring.AIX.ConfigData"

ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal"

TypeID="Custom.Unix.Process.Monitoring.ProcPerfMon.AIX.Mem.MonitorType"

ConfirmDelivery="true">

<Category>Custom</Category>

<AlertSettings

AlertMessage="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.AIX_AlertMessageResourceID">

<AlertOnState>Warning</AlertOnState>

<AutoResolve>true</AutoResolve>

<AlertPriority>Normal</AlertPriority>

<AlertSeverity>MatchMonitorHealth</AlertSeverity>

Page 125: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/AlertKey

$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Process

Name$</AlertParameter2>

<AlertParameter3>$Data/Property[@Name='Max_CPU_Used_AIX']$</AlertParameter3>

</AlertParameters>

</AlertSettings>

<OperationalStates>

<OperationalState ID="UIGeneratedOpStateId466a0c97af40466da49c36b613416c4e"

MonitorTypeStateID="Critical" HealthState="Error" />

<OperationalState ID="UIGeneratedOpStateId3386c49a267644eab5e4ccc2d717cd4f"

MonitorTypeStateID="Warning" HealthState="Warning" />

<OperationalState ID="UIGeneratedOpStateId75ed0879969b44fd957efe3843db1b71"

MonitorTypeStateID="Success" HealthState="Success" />

</OperationalStates>

<Configuration>

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/PerfmonI

nterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Proc

essNamePattern$</ProcessNamePattern>

Page 126: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/C

ollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/RaisePerfAl

ert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/CPU

CriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.AIX.ConfigData"]/Me

moryCriticalThreshold$</MemCriticalThreshold>

</Configuration>

</UnitMonitor>

<UnitMonitor ID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.HPUX"

Accessibility="Internal" Enabled="true" Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal"

TypeID="Custom.Unix.Process.Monitoring.ProcPerfMon.HPUX.Mem.MonitorType"

ConfirmDelivery="true">

<Category>Custom</Category>

<AlertSettings

AlertMessage="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.HPUX_AlertMessageResourceID">

<AlertOnState>Warning</AlertOnState>

<AutoResolve>true</AutoResolve>

<AlertPriority>Normal</AlertPriority>

<AlertSeverity>MatchMonitorHealth</AlertSeverity>

Page 127: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/AlertK

ey$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Proces

sName$</AlertParameter2>

<AlertParameter3>$Data/Property[@Name='Max_Memory_Used_HPUX']$</AlertParameter3>

</AlertParameters>

</AlertSettings>

<OperationalStates>

<OperationalState ID="UIGeneratedOpStateIdeb42630f31a54e9f897f964f1f97325c"

MonitorTypeStateID="Critical" HealthState="Error" />

<OperationalState ID="UIGeneratedOpStateId3a8a893c0e664559850c570551c19a37"

MonitorTypeStateID="Warning" HealthState="Warning" />

<OperationalState ID="UIGeneratedOpStateId2a7ec86dc5c24e0b8d3e7d0032af688d"

MonitorTypeStateID="Success" HealthState="Success" />

</OperationalStates>

<Configuration>

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

Page 128: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/RaisePer

fAlert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/CP

UWarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/C

PUCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.HPUX.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</Configuration>

</UnitMonitor>

<UnitMonitor ID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.RHEL"

Accessibility="Internal" Enabled="true" Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal"

TypeID="Custom.Unix.Process.Monitoring.ProcPerfMon.RHEL.Mem.MonitorType"

ConfirmDelivery="true">

<Category>Custom</Category>

<AlertSettings

AlertMessage="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.RHEL_AlertMessageResourceID">

<AlertOnState>Warning</AlertOnState>

<AutoResolve>true</AutoResolve>

<AlertPriority>Normal</AlertPriority>

<AlertSeverity>MatchMonitorHealth</AlertSeverity>

Page 129: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AlertParameters>

<AlertParameter1>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/AlertK

ey$</AlertParameter1>

<AlertParameter2>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Proces

sName$</AlertParameter2>

<AlertParameter3>$Data/Property[@Name='Max_Memory_Used_Linux']$</AlertParameter3>

</AlertParameters>

</AlertSettings>

<OperationalStates>

<OperationalState ID="UIGeneratedOpStateIdfa03a01ad693406599524c18d9d445e1"

MonitorTypeStateID="Critical" HealthState="Error" />

<OperationalState ID="UIGeneratedOpStateIdf3eba7e929304d8381bde217188e96f9"

MonitorTypeStateID="Warning" HealthState="Warning" />

<OperationalState ID="UIGeneratedOpStateId7fa35792547c45f6a83a9cb2508b6c8c"

MonitorTypeStateID="Success" HealthState="Success" />

</OperationalStates>

<Configuration>

<IntervalSeconds>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Perfmo

nInterval$</IntervalSeconds>

<TargetSystem>$Target/Host/Property[Type="MicrosoftUnixLibrary!Microsoft.Unix.Computer"]/Princip

alName$</TargetSystem>

<Timeout>150</Timeout>

<ProcessNamePattern>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/Pr

ocessNamePattern$</ProcessNamePattern>

Page 130: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<CollectProcessPerfData>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

CollectProcessPerfData$</CollectProcessPerfData>

<RaisePerfAlert>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/RaisePerf

Alert$</RaisePerfAlert>

<CPUWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CPU

WarnThreshold$</CPUWarnThreshold>

<CPUCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/CP

UCriticalThreshold$</CPUCriticalThreshold>

<MemWarnThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/M

emoryWarnThreshold$</MemWarnThreshold>

<MemCriticalThreshold>$Target/Property[Type="Custom.Unix.Process.Monitoring.RHEL.ConfigData"]/

MemoryCriticalThreshold$</MemCriticalThreshold>

</Configuration>

</UnitMonitor>

</Monitors>

</Monitoring>

<Presentation>

<Views>

<View ID="View_1ddf8142680547e4aa4e6e984a65211e" Accessibility="Public" Enabled="true"

Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

TypeID="SC!Microsoft.SystemCenter.StateViewType" Visible="true">

<Category>Operations</Category>

<Criteria>

<InMaintenanceMode>false</InMaintenanceMode>

</Criteria>

Page 131: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Presentation>

<ColumnInfo Index="0" SortIndex="0" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Descending">

<Name>State</Name>

<Id>Custom.Unix.Process.Monitoring.RHEL.ConfigData</Id>

</ColumnInfo>

<ColumnInfo Index="3" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Maintenance Mode</Name>

<Id>InMaintenanceMode</Id>

</ColumnInfo>

<ColumnInfo Index="4" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Name</Name>

<Id>Name</Id>

</ColumnInfo>

<ColumnInfo Index="5" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Path</Name>

<Id>Path</Id>

</ColumnInfo>

<ColumnInfo Index="1" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Hostname</Name>

<Id>Hostname</Id>

</ColumnInfo>

<ColumnInfo Index="6" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

Page 132: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Alert Key</Name>

<Id>AlertKey</Id>

</ColumnInfo>

<ColumnInfo Index="7" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Raise Alert</Name>

<Id>RaiseAlert</Id>

</ColumnInfo>

<ColumnInfo Index="8" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Monitoring Interval</Name>

<Id>MonitoringInterval</Id>

</ColumnInfo>

<ColumnInfo Index="9" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Process Min Count</Name>

<Id>ProcessMinCount</Id>

</ColumnInfo>

<ColumnInfo Index="10" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Process Max Count</Name>

<Id>ProcessMaxCount</Id>

</ColumnInfo>

<ColumnInfo Index="11" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Collect PerfData</Name>

<Id>CollectProcessPerfData</Id>

Page 133: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</ColumnInfo>

<ColumnInfo Index="12" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Raise Perf Alert</Name>

<Id>RaisePerfAlert</Id>

</ColumnInfo>

<ColumnInfo Index="13" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>CPU Warning Threshold</Name>

<Id>CPUWarnThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="14" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>CPU Critical Threshold</Name>

<Id>CPUCriticalThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="15" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Memory Warning Threshold</Name>

<Id>MemoryWarnThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="16" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Memory Critical Threshold</Name>

<Id>MemoryCriticalThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="17" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

Page 134: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Process Name Pattern</Name>

<Id>ProcessNamePattern</Id>

</ColumnInfo>

<ColumnInfo Index="2" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Process Name</Name>

<Id>ProcessName</Id>

</ColumnInfo>

<ColumnInfo Index="18" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Perfmon Interval</Name>

<Id>PerfmonInterval</Id>

</ColumnInfo>

<ColumnInfo Index="19" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Display Name</Name>

<Id>DisplayName</Id>

</ColumnInfo>

</Presentation>

<Target />

</View>

<View ID="View_33a654a32b8745ae955a05cd4824e73c" Accessibility="Public" Enabled="true"

Target="System!System.Entity" TypeID="SC!Microsoft.SystemCenter.AlertViewType" Visible="true">

<Category>Operations</Category>

<Criteria>

<Name>Unix Process Alerts</Name>

</Criteria>

Page 135: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Presentation>

<ColumnInfo Index="0" SortIndex="0" Width="22" Grouped="true" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Severity</Name>

<Id>Severity</Id>

</ColumnInfo>

<ColumnInfo Index="1" SortIndex="-1" Width="54" Grouped="false" Sorted="false"

IsSortable="false" Visible="true" SortOrder="Ascending">

<Name>Icon</Name>

<Id>Icon</Id>

</ColumnInfo>

<ColumnInfo Index="2" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Path</Name>

<Id>MonitoringObjectPath</Id>

</ColumnInfo>

<ColumnInfo Index="3" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Source</Name>

<Id>MonitoringObjectDisplayName</Id>

</ColumnInfo>

<ColumnInfo Index="4" SortIndex="-1" Width="22" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Maintenance Mode</Name>

<Id>MonitoringObjectInMaintenanceMode</Id>

</ColumnInfo>

<ColumnInfo Index="5" SortIndex="-1" Width="250" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

Page 136: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Name</Name>

<Id>Name</Id>

</ColumnInfo>

<ColumnInfo Index="6" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Resolution State</Name>

<Id>ResolutionState</Id>

</ColumnInfo>

<ColumnInfo Index="8" SortIndex="-1" Width="150" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Created</Name>

<Id>TimeRaised</Id>

</ColumnInfo>

<ColumnInfo Index="9" SortIndex="1" Width="100" Grouped="false" Sorted="true"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Age</Name>

<Id>Age</Id>

</ColumnInfo>

<ColumnInfo Index="10" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Type</Name>

<Id>Category</Id>

</ColumnInfo>

<ColumnInfo Index="11" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Owner</Name>

<Id>Owner</Id>

Page 137: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</ColumnInfo>

<ColumnInfo Index="12" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Priority</Name>

<Id>Priority</Id>

</ColumnInfo>

<ColumnInfo Index="13" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Latency</Name>

<Id>Latency</Id>

</ColumnInfo>

<ColumnInfo Index="7" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Description</Name>

<Id>Description</Id>

</ColumnInfo>

<ColumnInfo Index="14" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Connector</Name>

<Id>ConnectorId</Id>

</ColumnInfo>

<ColumnInfo Index="15" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Forwarding Status</Name>

<Id>ConnectorStatus</Id>

</ColumnInfo>

<ColumnInfo Index="16" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

Page 138: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Class</Name>

<Id>Class</Id>

</ColumnInfo>

<ColumnInfo Index="17" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Time in State</Name>

<Id>TimeInState</Id>

</ColumnInfo>

<ColumnInfo Index="18" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Custom Field 1</Name>

<Id>CustomField1</Id>

</ColumnInfo>

<ColumnInfo Index="19" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Custom Field 2</Name>

<Id>CustomField2</Id>

</ColumnInfo>

<ColumnInfo Index="20" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Custom Field 3</Name>

<Id>CustomField3</Id>

</ColumnInfo>

<ColumnInfo Index="21" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Custom Field 4</Name>

<Id>CustomField4</Id>

Page 139: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</ColumnInfo>

<ColumnInfo Index="22" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Custom Field 5</Name>

<Id>CustomField5</Id>

</ColumnInfo>

<ColumnInfo Index="23" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Custom Field 6</Name>

<Id>CustomField6</Id>

</ColumnInfo>

<ColumnInfo Index="24" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Custom Field 7</Name>

<Id>CustomField7</Id>

</ColumnInfo>

<ColumnInfo Index="25" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Custom Field 8</Name>

<Id>CustomField8</Id>

</ColumnInfo>

<ColumnInfo Index="26" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Custom Field 9</Name>

<Id>CustomField9</Id>

</ColumnInfo>

<ColumnInfo Index="27" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

Page 140: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Custom Field 10</Name>

<Id>CustomField10</Id>

</ColumnInfo>

<ColumnInfo Index="28" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Resolved By</Name>

<Id>ResolvedBy</Id>

</ColumnInfo>

<ColumnInfo Index="29" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Time Resolved</Name>

<Id>TimeResolved</Id>

</ColumnInfo>

<ColumnInfo Index="30" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Last State Change</Name>

<Id>TimeResolutionStateLastModified</Id>

</ColumnInfo>

<ColumnInfo Index="31" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Last Modified</Name>

<Id>LastModified</Id>

</ColumnInfo>

<ColumnInfo Index="32" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Last Modified By</Name>

<Id>LastModifiedBy</Id>

Page 141: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</ColumnInfo>

<ColumnInfo Index="33" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Management Group</Name>

<Id>ManagementGroup</Id>

</ColumnInfo>

<ColumnInfo Index="34" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Site</Name>

<Id>SiteName</Id>

</ColumnInfo>

<ColumnInfo Index="35" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Repeat Count</Name>

<Id>RepeatCount</Id>

</ColumnInfo>

<ColumnInfo Index="36" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Ticket ID</Name>

<Id>TicketId</Id>

</ColumnInfo>

</Presentation>

<Target />

</View>

<View ID="View_560f769bba0042a08321faf688bf049b" Accessibility="Public" Enabled="true"

Target="Custom.Unix.Process.Monitoring.AIX.ConfigData"

TypeID="SC!Microsoft.SystemCenter.PerformanceViewType" Visible="true">

<Category>Operations</Category>

Page 142: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Criteria />

<Presentation>

<SortedColumnIndex>0</SortedColumnIndex>

<SortOrder>0</SortOrder>

<StartTime>2012-10-23T10:21:28.418625-04:00</StartTime>

<EndTime>2012-10-24T10:21:28.418625-04:00</EndTime>

<DynamicTimeTicks>864000000000</DynamicTimeTicks>

<IsDynamic>true</IsDynamic>

<Is3DMode>false</Is3DMode>

<ShowAlerts>false</ShowAlerts>

<ShowMaintenanceMode>false</ShowMaintenanceMode>

<BaselineMode>false</BaselineMode>

<ShowPointLabels>false</ShowPointLabels>

<EnableSmartLabels>true</EnableSmartLabels>

<RightAngleAxes>false</RightAngleAxes>

<ClusterSeries>false</ClusterSeries>

<Title />

<TitleFont>Microsoft Sans Serif,12,Regular</TitleFont>

<ChartFont>Microsoft Sans Serif,8.25,Regular</ChartFont>

<ShowBands>false</ShowBands>

<BandColor>-1579033</BandColor>

<ChartType>Line</ChartType>

<Depth>100</Depth>

<GapDepth>100</GapDepth>

<Perspective>10</Perspective>

Page 143: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<GraphXRotation>0</GraphXRotation>

<GraphYRotation>0</GraphYRotation>

<XLabelAngle>0</XLabelAngle>

<LabelColor>-16777216</LabelColor>

<LabelFont>Microsoft Sans Serif,8.25,Regular</LabelFont>

<XAxisVisible>True</XAxisVisible>

<XShowMajorGridlines>false</XShowMajorGridlines>

<XShowMinorGridlines>false</XShowMinorGridlines>

<ShowInterlaceStrips>false</ShowInterlaceStrips>

<XInterlaceColor>16777215</XInterlaceColor>

<XShowSideMargin>true</XShowSideMargin>

<XAxisFont>Microsoft Sans Serif,8.25,Regular</XAxisFont>

<AutoAxis>true</AutoAxis>

<AxisMax>100</AxisMax>

<AxisMin>0</AxisMin>

<YAxisVisible>True</YAxisVisible>

<YShowMajorGridlines>true</YShowMajorGridlines>

<YShowMinorGridlines>false</YShowMinorGridlines>

<YShowInterlaceStrips>false</YShowInterlaceStrips>

<YShowSideMargin>true</YShowSideMargin>

<YAxisFont>Microsoft Sans Serif,8.25,Regular</YAxisFont>

<BackgroundColor1>-1</BackgroundColor1>

<BackgroundColor2>-1</BackgroundColor2>

<GradientType>None</GradientType>

<Series />

Page 144: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Presentation>

<Target />

</View>

<View ID="View_8d56252bbf324794837d4904a7811c6c" Accessibility="Public" Enabled="true"

Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

TypeID="SC!Microsoft.SystemCenter.PerformanceViewType" Visible="true">

<Category>Operations</Category>

<Criteria />

<Presentation>

<SortedColumnIndex>0</SortedColumnIndex>

<SortOrder>0</SortOrder>

<StartTime>2012-10-23T10:25:29.949875-04:00</StartTime>

<EndTime>2012-10-24T10:25:29.949875-04:00</EndTime>

<DynamicTimeTicks>864000000000</DynamicTimeTicks>

<IsDynamic>true</IsDynamic>

<Is3DMode>false</Is3DMode>

<ShowAlerts>false</ShowAlerts>

<ShowMaintenanceMode>false</ShowMaintenanceMode>

<BaselineMode>false</BaselineMode>

<ShowPointLabels>false</ShowPointLabels>

<EnableSmartLabels>true</EnableSmartLabels>

<RightAngleAxes>false</RightAngleAxes>

<ClusterSeries>false</ClusterSeries>

<Title />

<TitleFont>Microsoft Sans Serif,12,Regular</TitleFont>

<ChartFont>Microsoft Sans Serif,8.25,Regular</ChartFont>

Page 145: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ShowBands>false</ShowBands>

<BandColor>-1579033</BandColor>

<ChartType>Line</ChartType>

<Depth>100</Depth>

<GapDepth>100</GapDepth>

<Perspective>10</Perspective>

<GraphXRotation>0</GraphXRotation>

<GraphYRotation>0</GraphYRotation>

<XLabelAngle>0</XLabelAngle>

<LabelColor>-16777216</LabelColor>

<LabelFont>Microsoft Sans Serif,8.25,Regular</LabelFont>

<XAxisVisible>True</XAxisVisible>

<XShowMajorGridlines>false</XShowMajorGridlines>

<XShowMinorGridlines>false</XShowMinorGridlines>

<ShowInterlaceStrips>false</ShowInterlaceStrips>

<XInterlaceColor>16777215</XInterlaceColor>

<XShowSideMargin>true</XShowSideMargin>

<XAxisFont>Microsoft Sans Serif,8.25,Regular</XAxisFont>

<AutoAxis>true</AutoAxis>

<AxisMax>100</AxisMax>

<AxisMin>0</AxisMin>

<YAxisVisible>True</YAxisVisible>

<YShowMajorGridlines>true</YShowMajorGridlines>

<YShowMinorGridlines>false</YShowMinorGridlines>

<YShowInterlaceStrips>false</YShowInterlaceStrips>

Page 146: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<YShowSideMargin>true</YShowSideMargin>

<YAxisFont>Microsoft Sans Serif,8.25,Regular</YAxisFont>

<BackgroundColor1>-1</BackgroundColor1>

<BackgroundColor2>-1</BackgroundColor2>

<GradientType>None</GradientType>

<Series />

</Presentation>

<Target />

</View>

<View ID="View_a9fae1e03bae4d54b9fd157e2b3e6ac5" Accessibility="Public" Enabled="true"

Target="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

TypeID="SC!Microsoft.SystemCenter.PerformanceViewType" Visible="true">

<Category>Operations</Category>

<Criteria />

<Presentation>

<SortedColumnIndex>0</SortedColumnIndex>

<SortOrder>0</SortOrder>

<StartTime>2012-10-23T10:27:05.981125-04:00</StartTime>

<EndTime>2012-10-24T10:27:05.981125-04:00</EndTime>

<DynamicTimeTicks>864000000000</DynamicTimeTicks>

<IsDynamic>true</IsDynamic>

<Is3DMode>false</Is3DMode>

<ShowAlerts>false</ShowAlerts>

<ShowMaintenanceMode>false</ShowMaintenanceMode>

<BaselineMode>false</BaselineMode>

<ShowPointLabels>false</ShowPointLabels>

Page 147: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<EnableSmartLabels>true</EnableSmartLabels>

<RightAngleAxes>false</RightAngleAxes>

<ClusterSeries>false</ClusterSeries>

<Title />

<TitleFont>Microsoft Sans Serif,12,Regular</TitleFont>

<ChartFont>Microsoft Sans Serif,8.25,Regular</ChartFont>

<ShowBands>false</ShowBands>

<BandColor>-1579033</BandColor>

<ChartType>Line</ChartType>

<Depth>100</Depth>

<GapDepth>100</GapDepth>

<Perspective>10</Perspective>

<GraphXRotation>0</GraphXRotation>

<GraphYRotation>0</GraphYRotation>

<XLabelAngle>0</XLabelAngle>

<LabelColor>-16777216</LabelColor>

<LabelFont>Microsoft Sans Serif,8.25,Regular</LabelFont>

<XAxisVisible>True</XAxisVisible>

<XShowMajorGridlines>false</XShowMajorGridlines>

<XShowMinorGridlines>false</XShowMinorGridlines>

<ShowInterlaceStrips>false</ShowInterlaceStrips>

<XInterlaceColor>16777215</XInterlaceColor>

<XShowSideMargin>true</XShowSideMargin>

<XAxisFont>Microsoft Sans Serif,8.25,Regular</XAxisFont>

<AutoAxis>true</AutoAxis>

Page 148: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<AxisMax>100</AxisMax>

<AxisMin>0</AxisMin>

<YAxisVisible>True</YAxisVisible>

<YShowMajorGridlines>true</YShowMajorGridlines>

<YShowMinorGridlines>false</YShowMinorGridlines>

<YShowInterlaceStrips>false</YShowInterlaceStrips>

<YShowSideMargin>true</YShowSideMargin>

<YAxisFont>Microsoft Sans Serif,8.25,Regular</YAxisFont>

<BackgroundColor1>-1</BackgroundColor1>

<BackgroundColor2>-1</BackgroundColor2>

<GradientType>None</GradientType>

<Series />

</Presentation>

<Target />

</View>

<View ID="View_bd07a3b66ffa4b71bdbb4548ba137fb5" Accessibility="Public" Enabled="true"

Target="Custom.Unix.Process.Monitoring.AIX.ConfigData"

TypeID="SC!Microsoft.SystemCenter.StateViewType" Visible="true">

<Category>Operations</Category>

<Criteria>

<InMaintenanceMode>false</InMaintenanceMode>

</Criteria>

<Presentation>

<ColumnInfo Index="0" SortIndex="0" Width="100" Grouped="false" Sorted="true"

IsSortable="true" Visible="true" SortOrder="Descending">

<Name>State</Name>

<Id>Custom.Unix.Process.Monitoring.AIX.ConfigData</Id>

Page 149: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</ColumnInfo>

<ColumnInfo Index="3" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Maintenance Mode</Name>

<Id>InMaintenanceMode</Id>

</ColumnInfo>

<ColumnInfo Index="4" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Name</Name>

<Id>Name</Id>

</ColumnInfo>

<ColumnInfo Index="5" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Path</Name>

<Id>Path</Id>

</ColumnInfo>

<ColumnInfo Index="1" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Hostname</Name>

<Id>Hostname</Id>

</ColumnInfo>

<ColumnInfo Index="6" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Alert Key</Name>

<Id>AlertKey</Id>

</ColumnInfo>

<ColumnInfo Index="7" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

Page 150: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Raise Alert</Name>

<Id>RaiseAlert</Id>

</ColumnInfo>

<ColumnInfo Index="8" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Monitoring Interval</Name>

<Id>MonitoringInterval</Id>

</ColumnInfo>

<ColumnInfo Index="9" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Process Min Count</Name>

<Id>ProcessMinCount</Id>

</ColumnInfo>

<ColumnInfo Index="10" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Process Max Count</Name>

<Id>ProcessMaxCount</Id>

</ColumnInfo>

<ColumnInfo Index="11" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Collect Process Perf Data</Name>

<Id>CollectProcessPerfData</Id>

</ColumnInfo>

<ColumnInfo Index="12" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Raise Perf Alert</Name>

<Id>RaisePerfAlert</Id>

Page 151: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</ColumnInfo>

<ColumnInfo Index="13" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>CPU Warning Threshold</Name>

<Id>CPUWarnThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="14" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>CPU Critical Threshold</Name>

<Id>CPUCriticalThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="15" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Memory Warning Threshold</Name>

<Id>MemoryWarnThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="16" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Memory Critical Threshold</Name>

<Id>MemoryCriticalThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="17" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Process Name REGEX</Name>

<Id>ProcessNamePattern</Id>

</ColumnInfo>

<ColumnInfo Index="18" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

Page 152: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>PerfMon Interval</Name>

<Id>PerfmonInterval</Id>

</ColumnInfo>

<ColumnInfo Index="2" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Process Name</Name>

<Id>ProcessName</Id>

</ColumnInfo>

<ColumnInfo Index="19" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Display Name</Name>

<Id>DisplayName</Id>

</ColumnInfo>

</Presentation>

<Target />

</View>

<View ID="View_f7eeb2dda14847bd946d5638773532dd" Accessibility="Public" Enabled="true"

Target="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

TypeID="SC!Microsoft.SystemCenter.StateViewType" Visible="true">

<Category>Operations</Category>

<Criteria>

<InMaintenanceMode>false</InMaintenanceMode>

</Criteria>

<Presentation>

<ColumnInfo Index="0" SortIndex="0" Width="100" Grouped="false" Sorted="true"

IsSortable="true" Visible="true" SortOrder="Descending">

<Name>State</Name>

Page 153: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Id>Custom.Unix.Process.Monitoring.HPUX.ConfigData</Id>

</ColumnInfo>

<ColumnInfo Index="1" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Maintenance Mode</Name>

<Id>InMaintenanceMode</Id>

</ColumnInfo>

<ColumnInfo Index="2" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Name</Name>

<Id>Name</Id>

</ColumnInfo>

<ColumnInfo Index="3" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="true" SortOrder="Ascending">

<Name>Path</Name>

<Id>Path</Id>

</ColumnInfo>

<ColumnInfo Index="4" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Hostname</Name>

<Id>Hostname</Id>

</ColumnInfo>

<ColumnInfo Index="5" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Alert Key</Name>

<Id>AlertKey</Id>

</ColumnInfo>

Page 154: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ColumnInfo Index="6" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Rasie Alert</Name>

<Id>RaiseAlert</Id>

</ColumnInfo>

<ColumnInfo Index="7" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>MonitoringInterval</Name>

<Id>MonitoringInterval</Id>

</ColumnInfo>

<ColumnInfo Index="8" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Process Minimum Count</Name>

<Id>ProcessMinCount</Id>

</ColumnInfo>

<ColumnInfo Index="9" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Process Max Count</Name>

<Id>ProcessMaxCount</Id>

</ColumnInfo>

<ColumnInfo Index="10" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Collect Performance Data</Name>

<Id>CollectProcessPerfData</Id>

</ColumnInfo>

<ColumnInfo Index="11" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Raise Performance Alert</Name>

Page 155: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Id>RaisePerfAlert</Id>

</ColumnInfo>

<ColumnInfo Index="12" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>CPU Warning Threshold</Name>

<Id>CPUWarnThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="13" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>CPU Critical Threshold</Name>

<Id>CPUCriticalThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="14" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Memory Warning Threshold</Name>

<Id>MemoryWarnThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="15" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Memory Critical Threshold</Name>

<Id>MemoryCriticalThreshold</Id>

</ColumnInfo>

<ColumnInfo Index="16" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Process Name REGEX</Name>

<Id>ProcessNamePattern</Id>

</ColumnInfo>

Page 156: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<ColumnInfo Index="17" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Perfmon Interval</Name>

<Id>PerfmonInterval</Id>

</ColumnInfo>

<ColumnInfo Index="18" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Process Name</Name>

<Id>ProcessName</Id>

</ColumnInfo>

<ColumnInfo Index="19" SortIndex="-1" Width="100" Grouped="false" Sorted="false"

IsSortable="true" Visible="false" SortOrder="Ascending">

<Name>Display Name</Name>

<Id>DisplayName</Id>

</ColumnInfo>

</Presentation>

<Target />

</View>

</Views>

<Folders>

<Folder ID="Folder_2c1530bcb2704c9ab0a550fcd713d8d5" Accessibility="Public"

ParentFolder="Folder_2f7bc0e0af6d4d16a256c31d5f8f14d6" />

<Folder ID="Folder_2f7bc0e0af6d4d16a256c31d5f8f14d6" Accessibility="Public"

ParentFolder="SC!Microsoft.SystemCenter.Monitoring.ViewFolder.Root" />

<Folder ID="Folder_b6ec10b23c6440f2a5d73102fa35f95a" Accessibility="Public"

ParentFolder="Folder_2f7bc0e0af6d4d16a256c31d5f8f14d6" />

<Folder ID="Folder_f638314d0c16413ca0030ef86674b692" Accessibility="Public"

ParentFolder="Folder_2f7bc0e0af6d4d16a256c31d5f8f14d6" />

Page 157: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</Folders>

<FolderItems>

<FolderItem ElementID="View_1ddf8142680547e4aa4e6e984a65211e"

Folder="Folder_b6ec10b23c6440f2a5d73102fa35f95a" />

<FolderItem ElementID="View_33a654a32b8745ae955a05cd4824e73c"

Folder="Folder_2f7bc0e0af6d4d16a256c31d5f8f14d6" />

<FolderItem ElementID="View_560f769bba0042a08321faf688bf049b"

Folder="Folder_f638314d0c16413ca0030ef86674b692" />

<FolderItem ElementID="View_8d56252bbf324794837d4904a7811c6c"

Folder="Folder_2c1530bcb2704c9ab0a550fcd713d8d5" />

<FolderItem ElementID="View_a9fae1e03bae4d54b9fd157e2b3e6ac5"

Folder="Folder_b6ec10b23c6440f2a5d73102fa35f95a" />

<FolderItem ElementID="View_bd07a3b66ffa4b71bdbb4548ba137fb5"

Folder="Folder_f638314d0c16413ca0030ef86674b692" />

<FolderItem ElementID="View_f7eeb2dda14847bd946d5638773532dd"

Folder="Folder_2c1530bcb2704c9ab0a550fcd713d8d5" />

</FolderItems>

<StringResources>

<StringResource ID="AlertMessageID50dafac6df9941c5aaf6c586c9beedef" />

<StringResource ID="AlertMessageID68932e37a3784a99a856e10d1a2f9b0c" />

<StringResource ID="AlertMessageID7000d72b32364140b1883fc16ada2fbe" />

<StringResource ID="AlertMessageID841bbd7451644957be8087eb9d2c11f2" />

<StringResource ID="AlertMessageID8527916e630342aabda394895a5597e6" />

<StringResource ID="AlertMessageIDca923e54d96c40768937208269336d34" />

<StringResource ID="Custom.Unix.Process.Monitoring.ProcMonitor.AIX_AlertMessageResourceID"

/>

<StringResource ID="Custom.Unix.Process.Monitoring.ProcMonitor.HPUX_AlertMessageResourceID"

/>

Page 158: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<StringResource ID="Custom.Unix.Process.Monitoring.ProcMonitor.RHEL_AlertMessageResourceID"

/>

<StringResource

ID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.AIX_AlertMessageResourceID" />

<StringResource

ID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.HPUX_AlertMessageResourceID" />

<StringResource

ID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.RHEL_AlertMessageResourceID" />

<StringResource

ID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.AIX_AlertMessageResourceID" />

<StringResource

ID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.HPUX_AlertMessageResourceID" />

<StringResource

ID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.RHEL_AlertMessageResourceID" />

<StringResource

ID="Custom.Unix.Process.Monitoring.ProcPerfMonitor.CPU.RHEL_AlertMessageResourceID" />

</StringResources>

</Presentation>

<LanguagePacks>

<LanguagePack ID="ENU" IsDefault="true">

<DisplayStrings>

<DisplayString ElementID="AlertMessageID50dafac6df9941c5aaf6c586c9beedef">

<Name>Unix Process Alert</Name>

<Description>{0}:Unix process {1} is either NOT running or has breached the thresholds of

minimum count {2} and maximum count {3}</Description>

</DisplayString>

<DisplayString ElementID="AlertMessageID68932e37a3784a99a856e10d1a2f9b0c">

<Name>Unix Process NOT found/running</Name>

Page 159: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Description>{0}:Unix process {1} is either not running or has breached the instance threshold of

minimum {2} and maximum {3}</Description>

</DisplayString>

<DisplayString ElementID="AlertMessageID7000d72b32364140b1883fc16ada2fbe">

<Name>Unix Process Alert</Name>

<Description>{0}:Unix process {1} is either NOT running or has breached the thresholds of

minimum count {2} and maximum count {3}</Description>

</DisplayString>

<DisplayString ElementID="AlertMessageID841bbd7451644957be8087eb9d2c11f2">

<Name>Unix Process Alert</Name>

<Description>{0}:Unix process {1} is either NOT running or has breached the thresholds of

minimum count {2} and maximum count {3}</Description>

</DisplayString>

<DisplayString ElementID="AlertMessageID8527916e630342aabda394895a5597e6">

<Name>Unix Process NOT Found or NOT Running</Name>

<Description>{0}:Unix process {1} NOT found or NOT running</Description>

</DisplayString>

<DisplayString ElementID="AlertMessageIDca923e54d96c40768937208269336d34">

<Name>Unix Process NOT Running</Name>

<Description>{0}:Unix process "{1}" is either not running or has breached the threshold of process

count of minimum {2} and maximum {3}</Description>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring">

<Name>Custom Unix Process Monitoring</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData">

<Name>Custom Unix Process Monitoring AIX ConfigData</Name>

Page 160: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="AlertKey">

<Name>Alert Key</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="CollectProcessPerfData">

<Name>Collect Process Perf Data</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="CPUCriticalThreshold">

<Name>CPU Critical Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="CPUWarnThreshold">

<Name>CPU Warning Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="Hostname">

<Name>Hostname</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="MemoryCriticalThreshold">

<Name>Memory Critical Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="MemoryWarnThreshold">

<Name>Memory Warning Threshold</Name>

Page 161: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="MonitoringInterval">

<Name>Monitoring Interval</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="PerfmonInterval">

<Name>PerfMon Interval</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="ProcessMaxCount">

<Name>Process Max Count</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="ProcessMinCount">

<Name>Process Min Count</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="ProcessName">

<Name>Process Name</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="ProcessNamePattern">

<Name>Process Name REGEX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="RaiseAlert">

<Name>Raise Alert</Name>

Page 162: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData"

SubElementID="RaisePerfAlert">

<Name>Raise Perf Alert</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.AIX">

<Name>Custom Unix Process Monitoring DataSource GetPerformanceData AIX</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.HPUX">

<Name>Custom Unix Process Monitoring DataSource GetPerformanceData HPUX</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RHEL">

<Name>Custom Unix Process Monitoring DataSource GetPerformanceData RHEL</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.DataSource.GetPerformanceData.RunTop.HPUX">

<Name>Custom Unix Process Monitoring DataSource GetPerformanceData RunTop HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.DataSource.MonitorProcess">

<Name>Custom Unix Process Monitoring DataSource MonitorProcess</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.DataSource.ReadConfig.AIX">

<Name>Custom Unix Process Monitoring DataSource ReadConfig AIX</Name>

</DisplayString>

Page 163: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<DisplayString ElementID="Custom.Unix.Process.Monitoring.DataSource.ReadConfig.HPUX">

<Name>Custom Unix Process Monitoring DataSource ReadConfig HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.DataSource.ReadConfig.RHEL">

<Name>Custom Unix Process Monitoring DataSource ReadConfig RHEL</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.DataSource.RunShellCommand">

<Name>Custom Unix Process Monitoring DataSource RunShellCommand</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.Discovery.ReadConfigFile.AIX">

<Name>Custom Unix Process Monitoring Discovery ReadConfigFile AIX</Name>

<Description />

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.Discovery.ReadConfigFile.HPUX">

<Name>Custom Unix Process Monitoring Discovery ReadConfigFile HPUX</Name>

<Description />

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.Discovery.ReadConfigFile.RHEL">

<Name>Custom Unix Process Monitoring Discovery ReadConfigFile RHEL</Name>

<Description />

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData">

<Name>Custom Unix Process Monitoring HPUX ConfigData</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="AlertKey">

Page 164: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Alert Key</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="CollectProcessPerfData">

<Name>Collect Performance Data</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="CPUCriticalThreshold">

<Name>CPU Critical Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="CPUWarnThreshold">

<Name>CPU Warning Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="Hostname">

<Name>Hostname</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="MemoryCriticalThreshold">

<Name>Memory Critical Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="MemoryWarnThreshold">

<Name>Memory Warning Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="MonitoringInterval">

Page 165: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>MonitoringInterval</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="PerfmonInterval">

<Name>Perfmon Interval</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="ProcessMaxCount">

<Name>Process Max Count</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="ProcessMinCount">

<Name>Process Minimum Count</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="ProcessName">

<Name>Process Name</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="ProcessNamePattern">

<Name>Process Name REGEX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="RaiseAlert">

<Name>Rasie Alert</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData"

SubElementID="RaisePerfAlert">

Page 166: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Raise Performance Alert</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgCPUUsed.AIX">

<Name>Custom Unix Process Monitoring PerfMon AvgCPUUsed AIX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgCPUUsed.HPUX">

<Name>Custom Unix Process Monitoring PerfMon AvgCPUUsed HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgCPUUsed.RHEL">

<Name>Custom Unix Process Monitoring PerfMon AvgCPUUsed RHEL</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgMemUsed.AIX">

<Name>Custom Unix Process Monitoring PerfMon AvgMemUsed AIX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgMemUsed.HPUX">

<Name>Custom Unix Process Monitoring PerfMon AvgMemUsed HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgMemUsed.RHEL">

<Name>Custom Unix Process Monitoring PerfMon AvgMemUsed RHEL</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxCPUUsed.AIX">

<Name>Custom Unix Process Monitoring PerfMon MaxCPUUsed AIX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxCPUUsed.HPUX">

<Name>Custom Unix Process Monitoring PerfMon MaxCPUUsed HPUX</Name>

Page 167: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxCPUUsed.RHEL">

<Name>Custom Unix Process Monitoring PerfMon MaxCPUUsed RHEL</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxMemUsed.AIX">

<Name>Custom Unix Process Monitoring PerfMon MaxMemUsed AIX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxMemUsed.HPUX">

<Name>Custom Unix Process Monitoring PerfMon MaxMemUsed HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxMemUsed.RHEL">

<Name>Custom Unix Process Monitoring PerfMon MaxMemUsed RHEL</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.PerfMon.RunTOP.HPUX">

<Name>Custom Unix Process Monitoring PerfMon RunTOP HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcessMon.AIX">

<Name>Custom Unix Process Monitoring ProcessMon AIX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcessMon.HPUX">

<Name>Custom Unix Process Monitoring ProcessMon HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcessMon.RHEL">

<Name>Custom Unix Process Monitoring ProcessMon RHEL</Name>

</DisplayString>

Page 168: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMon.MonitorType">

<Name>Custom Unix Process Monitoring ProcMon MonitorType</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.AIX">

<Name>Custom Unix.Process.Monitoring.ProcMonitor.AIX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.AIX"

SubElementID="UIGeneratedOpStateId0f79b74595f04294a95d1aa9f685b106">

<Name>SUCCESS</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.AIX"

SubElementID="UIGeneratedOpStateId374f97e9f5fa42248968a096f847151c">

<Name>ERROR</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.AIX_AlertMessageResourceID">

<Name>Unix Process Alerts</Name>

<Description>{0}:Unix process {1} is either NOT running or has breached the thresholds of

minimum count {2} and maximum count {3}</Description>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.HPUX">

<Name>Custom Unix Process Monitoring ProcMonitor HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.HPUX"

SubElementID="UIGeneratedOpStateId3c317a9b55a64521825089f57255c74b">

<Name>SUCCESS</Name>

</DisplayString>

Page 169: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.HPUX"

SubElementID="UIGeneratedOpStateIdbb891a748bba4f7889418796591ce1d8">

<Name>ERROR</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.HPUX_AlertMessageResourceID">

<Name>Unix Process Alerts</Name>

<Description>{0}:Unix process {1} is either NOT running or has breached the thresholds of

minimum count {2} and maximum count {3}</Description>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.RHEL">

<Name>Custom Unix Process Monitoring ProcMonitor RHEL</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.RHEL"

SubElementID="UIGeneratedOpStateId329f4badc22a46f8b7c0e0dc2ca43c31">

<Name>ERROR</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.RHEL"

SubElementID="UIGeneratedOpStateIdb06f10c9404e4912835eaa27492e8ea3">

<Name>SUCCESS</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.RHEL_AlertMessageResourceID">

<Name>Unix Process Alerts</Name>

<Description>{0}:Unix process {1} is either NOT running or has breached the thresholds of

minimum count {2} and maximum count {3}</Description>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.AIX.CPU.MonitorType">

Page 170: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Custom Unix Process Monitoring ProcPerfMon AIX CPU MonitorType</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.AIX.Mem.MonitorType">

<Name>Custom Unix Process Monitoring ProcPerfMon AIX Mem MonitorType</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.AIX">

<Name>Custom Unix Process Monitoring ProcPerfMon CPU AIX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.AIX"

SubElementID="UIGeneratedOpStateIda13eed3f77fd4b9a8d3aa22dd6051633">

<Name>Success</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.AIX"

SubElementID="UIGeneratedOpStateIdb23bbf4f4d034504a737eeed56b9314d">

<Name>Critical</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.AIX"

SubElementID="UIGeneratedOpStateIdc0d3582fb2254a9cbe3788016194b297">

<Name>Warning</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.AIX_AlertMessageResourceID">

<Name>Unix Process Performance Alert</Name>

<Description><![CDATA[{0}:%CPU used by Unix Process {1} has exceeded threshold. %CPU

utilization is {2}]]></Description>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.HPUX">

Page 171: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Custom Unix Process Monitoring ProcPerfMon CPU HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.HPUX"

SubElementID="UIGeneratedOpStateId3a5933bd3cf348249067a36cba8ecaca">

<Name>Success</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.HPUX"

SubElementID="UIGeneratedOpStateId45e3693711284adbb2b7e02ee53ed0a6">

<Name>Warning</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.HPUX"

SubElementID="UIGeneratedOpStateIdcec6a19a0c0742a48f92196eec11fe51">

<Name>Critical</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.HPUX_AlertMessageResourceID">

<Name>Unix Process Performance Alert</Name>

<Description><![CDATA[{0}:%CPU used by Unix Process {1} has exceeded threshold. %CPU

utilization is {2}%]]></Description>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.RHEL">

<Name>Custom Unix Process Monitoring ProcPerfMon CPU RHEL</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.RHEL"

SubElementID="UIGeneratedOpStateId1478081235744cb593c9d6b8f12636ea">

<Name>Warning</Name>

</DisplayString>

Page 172: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.RHEL"

SubElementID="UIGeneratedOpStateId5f1ba05631714f00846087bb046775a4">

<Name>Critical</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.RHEL"

SubElementID="UIGeneratedOpStateIda24d5f597dda4fd889ca40633e6c9283">

<Name>Success</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.RHEL_AlertMessageResourceID">

<Name>Unix Process Performance Alert</Name>

<Description><![CDATA[{0}:%CPU used by Unix Process {1} has exceeded threshold. %CPU

utilization is {2}]]></Description>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.HPUX.CPU.MonitorType">

<Name>Custom Unix Process Monitoring ProcPerfMon HPUX CPU MonitorType</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.HPUX.Mem.MonitorType">

<Name>Custom Unix Process Monitoring ProcPerfMon HPUX Mem MonitorType</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.AIX">

<Name>Custom Unix Process Monitoring ProcPerfMon Mem AIX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.AIX"

SubElementID="UIGeneratedOpStateId3386c49a267644eab5e4ccc2d717cd4f">

<Name>Warning</Name>

Page 173: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.AIX"

SubElementID="UIGeneratedOpStateId466a0c97af40466da49c36b613416c4e">

<Name>Critical</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.AIX"

SubElementID="UIGeneratedOpStateId75ed0879969b44fd957efe3843db1b71">

<Name>Success</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.AIX_AlertMessageResourceID">

<Name>Unix Process Performance Alert</Name>

<Description><![CDATA[{0}:%Memory used by Unix Process {1} has exceeded threshold. %Memory

utilization is {2}]]></Description>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.HPUX">

<Name>Custom Unix Process Monitoring ProcPerfMon Mem HPUX</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.HPUX"

SubElementID="UIGeneratedOpStateId2a7ec86dc5c24e0b8d3e7d0032af688d">

<Name>Success</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.HPUX"

SubElementID="UIGeneratedOpStateId3a8a893c0e664559850c570551c19a37">

<Name>Warning</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.HPUX"

SubElementID="UIGeneratedOpStateIdeb42630f31a54e9f897f964f1f97325c">

Page 174: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Critical</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.HPUX_AlertMessageResourceID">

<Name>Unix Process Performance Alert</Name>

<Description><![CDATA[{0}:%Memory used by Unix Process {1} has exceeded threshold. %Memory

utilization is {2}]]></Description>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.RHEL">

<Name>Custom Unix Process Monitoring ProcPerfMon Mem RHEL</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.RHEL"

SubElementID="UIGeneratedOpStateId7fa35792547c45f6a83a9cb2508b6c8c">

<Name>Success</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.RHEL"

SubElementID="UIGeneratedOpStateIdf3eba7e929304d8381bde217188e96f9">

<Name>Warning</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.RHEL"

SubElementID="UIGeneratedOpStateIdfa03a01ad693406599524c18d9d445e1">

<Name>Critical</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.RHEL_AlertMessageResourceID">

<Name>Unix Process Performance Alert</Name>

<Description><![CDATA[{0}:%Memory used by Unix Process {1} has exceeded threshold. %Memory

utilization is {2}]]></Description>

Page 175: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.RHEL.CPU.MonitorType">

<Name>Custom Unix Process Monitoring ProcPerfMon RHEL CPU MonitorType</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.RHEL.Mem.MonitorType">

<Name>Custom Unix Process Monitoring ProcPerfMon RHEL Mem MonitorType</Name>

</DisplayString>

<DisplayString

ElementID="Custom.Unix.Process.Monitoring.ProcPerfMonitor.CPU.RHEL_AlertMessageResourceID">

<Name>Unix Process Performance Alert</Name>

<Description><![CDATA[{0}:Unix Process '{1}' is using {2} %CPU]]></Description>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData">

<Name>Custom Unix Process Monitoring RHEL ConfigData</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="AlertKey">

<Name>Alert Key</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="CollectProcessPerfData">

<Name>Collect PerfData</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="CPUCriticalThreshold">

<Name>CPU Critical Threshold</Name>

Page 176: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="CPUWarnThreshold">

<Name>CPU Warning Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="Hostname">

<Name>Hostname</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="MemoryCriticalThreshold">

<Name>Memory Critical Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="MemoryWarnThreshold">

<Name>Memory Warning Threshold</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="MonitoringInterval">

<Name>Monitoring Interval</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="PerfmonInterval">

<Name>Perfmon Interval</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="ProcessMaxCount">

<Name>Process Max Count</Name>

Page 177: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="ProcessMinCount">

<Name>Process Min Count</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="ProcessName">

<Name>Process Name</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="ProcessNamePattern">

<Name>Process Name Pattern</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="RaiseAlert">

<Name>Raise Alert</Name>

</DisplayString>

<DisplayString ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData"

SubElementID="RaisePerfAlert">

<Name>Raise Perf Alert</Name>

</DisplayString>

<DisplayString ElementID="Folder_2c1530bcb2704c9ab0a550fcd713d8d5">

<Name>HPUX</Name>

</DisplayString>

<DisplayString ElementID="Folder_2f7bc0e0af6d4d16a256c31d5f8f14d6">

<Name>Custom Unix Process Monitoring</Name>

</DisplayString>

Page 178: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<DisplayString ElementID="Folder_b6ec10b23c6440f2a5d73102fa35f95a">

<Name>Linux</Name>

</DisplayString>

<DisplayString ElementID="Folder_f638314d0c16413ca0030ef86674b692">

<Name>AIX</Name>

</DisplayString>

<DisplayString ElementID="View_1ddf8142680547e4aa4e6e984a65211e">

<Name>Process State</Name>

</DisplayString>

<DisplayString ElementID="View_33a654a32b8745ae955a05cd4824e73c">

<Name>Alerts</Name>

</DisplayString>

<DisplayString ElementID="View_560f769bba0042a08321faf688bf049b">

<Name>Process Performance</Name>

</DisplayString>

<DisplayString ElementID="View_8d56252bbf324794837d4904a7811c6c">

<Name>Process Performance</Name>

</DisplayString>

<DisplayString ElementID="View_a9fae1e03bae4d54b9fd157e2b3e6ac5">

<Name>Process Performance</Name>

</DisplayString>

<DisplayString ElementID="View_bd07a3b66ffa4b71bdbb4548ba137fb5">

<Name>Process State</Name>

</DisplayString>

<DisplayString ElementID="View_f7eeb2dda14847bd946d5638773532dd">

Page 179: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<Name>Process State</Name>

</DisplayString>

</DisplayStrings>

<KnowledgeArticles>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring" Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>The Custom Unix Process Monitoring management pack enables monitoring and

performance data collection of unix processes.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>The management pack is configured to read a central config file that contains

information about unix processes to be monitored and is located in a shared location accessible from

the management servers. All discoveries are targetted to Management Servers and are disabled by

default. In order to enable them, they need to be overriden for one specific management server in the

management group </maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Additional</maml:title>

<maml:para>Management Pack Designed and Developed by Nikhil Chordia.

www.techordian.com / [email protected]</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.AIX.ConfigData" Visible="true">

<MamlContent>

Page 180: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This class defines process monitoring configuration parameters for all AIX servers

only. It is instantiated after reading the lines from the central config file. Each instance of this class

corresponds to a line in the config file. </maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.Discovery.ReadConfigFile.AIX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This discovery reads from the central config file and creates instances of the

Custom Unix Process Monitoring AIX ConfigData Class and is DISABLED BY DEFAULT.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>This discovery needs to be overriden for a specific object of class Management

Server. The override will enable the discovery and provide the correct path of the config file. Please note

that the discovery needs to be overridden for each Management Group as the Management Server it

targets will change.</maml:para>

<maml:para>Configurable parameters are the discovery interval and the path to central

config.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.Discovery.ReadConfigFile.HPUX"

Visible="true">

Page 181: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This discovery reads from the central config file and creates instances of the

Custom Unix Process Monitoring HPUX ConfigData Class and is DISABLED BY DEFAULT</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>This discovery needs to be overriden for a specific object of class Management

Server. The override will enable the discovery and provide the correct path of the config file. Please note

that the discovery needs to be overridden for each Management Group as the Management Server it

targets will change.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.Discovery.ReadConfigFile.RHEL"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This discovery reads from the central config file and creates instances of the

Custom Unix Process Monitoring AIX ConfigData Class and is DISABLED BY DEFAULT</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>This discovery needs to be overriden for a specific object of class Management

Server. The override will enable the discovery and provide the correct path of the config file. Please note

that the discovery needs to be overridden for each Management Group as the Management Server it

targets will change.</maml:para>

Page 182: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.HPUX.ConfigData" Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This class defines process monitoring configuration parameters for all HPUX servers

only. It is instantiated after reading the lines from the central config file. Each instance of this class

corresponds to a line in the config file. </maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgCPUUsed.AIX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Avg %CPU used for processes on AIX servers.

]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

Page 183: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgCPUUsed.HPUX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Avg %CPU used for processes on HPUX

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgCPUUsed.RHEL"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Avg %CPU used for processes on Linux

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

Page 184: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgMemUsed.AIX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Avg %Memory used for processes on AIX

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgMemUsed.HPUX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Avg %Memory used for processes on HPUX

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

Page 185: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.AvgMemUsed.RHEL"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Avg %Memory used for processes on HPUX

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxCPUUsed.AIX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Max %CPU used for processes on AIX

servers]]></maml:para>

Page 186: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxCPUUsed.HPUX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Max %CPU used for processes on HPUX

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxCPUUsed.RHEL"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

Page 187: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Max %CPU used for processes on Linux

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxMemUsed.AIX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Max %Memory used for processes on AIX

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxMemUsed.HPUX"

Visible="true">

Page 188: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Max %Memory used for processes on HPUX

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.MaxMemUsed.RHEL"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This rule collects Max %Memory used for processes on Linux

servers]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

</MamlContent>

Page 189: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.PerfMon.RunTOP.HPUX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This rule runs TOP command on all HPUX servers and stores the output to a

file.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcessMon.AIX" Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This rule is similar to the process monitor. It also alerts if the thresholds of

minimum and maximum instance counts are breached.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>This rule will alert if a process breached the thresholds of minimum and maximum

process instances.</maml:para>

Page 190: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Additional</maml:title>

<maml:para>NOTE : This rule is disabled by default as it may cause a lot of noise and end up

generating a lot of alerts. It should be enabled if and only if the requirments change to generate multiple

alerts per service down.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcessMon.HPUX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This rule is similar to the process monitor. It also alerts if the thresholds of

minimum and maximum instance counts are breached.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>This rule will alert if a process breached the thresholds of minimum and maximum

process instances.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

Page 191: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<maml:title>Additional</maml:title>

<maml:para>NOTE : This rule is disabled by default as it may cause a lot of noise and end up

generating a lot of alerts. It should be enabled if and only if the requirments change to generate multiple

alerts per service down.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcessMon.RHEL"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This rule is similar to the process monitor. It also alerts if the thresholds of

minimum and maximum instance counts are breached.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>This rule will alert if a process breached the thresholds of minimum and maximum

process instances.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Additional</maml:title>

Page 192: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<maml:para>NOTE : This rule is disabled by default as it may cause a lot of noise and end up

generating a lot of alerts. It should be enabled if and only if the requirments change to generate multiple

alerts per service down.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.AIX" Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This monitor looks for unix processes on AIX servers and alerts if a thresholds of

minimum or maximum process instances are breached.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>If this monitor is in Critical condition, it implies that either the process is not

running or it has breached the thresholds for minimum and maximum instances.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Resolutions</maml:title>

<maml:para>Login to the server and check why the process is not running or why did it

terminate unexpectedly. Mostly it will be resolved by restarting the process/service. </maml:para>

</maml:section>

Page 193: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.HPUX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This monitor looks for unix processes on HPUX servers and alerts if a thresholds of

minimum or maximum process instances are breached.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>If this monitor is in Critical condition, it implies that either the process is not

running or it has breached the thresholds for minimum and maximum instances.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Resolutions</maml:title>

<maml:para>Login to the server and check why the process is not running or why did it

terminate unexpectedly. Mostly it will be resolved by restarting the process/service.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

Page 194: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcMonitor.RHEL"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This monitor looks for unix processes on Linux servers and alerts if a thresholds of

minimum or maximum process instances are breached.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>If this monitor is in Critical condition, it implies that either the process is not

running or it has breached the thresholds for minimum and maximum instances.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Resolutions</maml:title>

<maml:para>Login to the server and check why the process is not running or why did it

terminate unexpectedly. Mostly it will be resolved by restarting the process/service.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.AIX"

Visible="true">

<MamlContent>

Page 195: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This monitor looks for unix processes on AIX servers and alerts if the

%CPU utilization of the process exceeds thresholds.]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>Below are the states and reasons for this monitor: </maml:para>

<maml:para><![CDATA[WARNING : %CPU utilization of the unix process exceeds the warning

threshold.]]></maml:para>

<maml:para><![CDATA[CRITICAL : %CPU utilization of the unix process exceeds the critical

threshold.]]></maml:para>

<maml:para />

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Resolutions</maml:title>

<maml:para>Login to the server and see why this process is taking such high CPU. Common

resolution would be to bounce the process.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.HPUX"

Visible="true">

Page 196: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This monitor looks for unix processes on HPUX servers and alerts if the

%CPU utilization of the process exceeds thresholds.]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>Below are the states and reasons for this monitor:</maml:para>

<maml:para><![CDATA[WARNING : %CPU utilization of the unix process exceeds the warning

threshold.]]></maml:para>

<maml:para><![CDATA[CRITICAL : %CPU utilization of the unix process exceeds the critical

threshold.]]></maml:para>

<maml:para />

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Resolutions</maml:title>

<maml:para>Login to the server and see why this process is taking such high CPU. Common

resolution would be to bounce the process.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

Page 197: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.CPU.RHEL"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This monitor looks for unix processes on Linux servers and alerts if the

%CPU utilization of the process exceeds thresholds.]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>Below are the states and reasons for this monitor:</maml:para>

<maml:para><![CDATA[WARNING : %CPU utilization of the unix process exceeds the warning

threshold.]]></maml:para>

<maml:para><![CDATA[CRITICAL : %CPU utilization of the unix process exceeds the critical

threshold. ]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Resolutions</maml:title>

<maml:para>Login to the server and see why this process is taking such high CPU. Common

resolution would be to bounce the process.</maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

Page 198: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.AIX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This monitor looks for unix processes on AIX servers and alerts if the

%Memory utilization of the process exceeds thresholds.]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>Below are the states and reasons for this monitor:</maml:para>

<maml:para><![CDATA[WARNING : %Memory utilization of the unix process exceeds the

warning threshold.]]></maml:para>

<maml:para><![CDATA[CRITICAL : %Memory utilization of the unix process exceeds the critical

threshold.]]></maml:para>

<maml:para />

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Resolutions</maml:title>

<maml:para>Login to the server and see why this process is taking such high Memory. Common

resolution would be to bounce the process.</maml:para>

</maml:section>

</MamlContent>

Page 199: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.HPUX"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This monitor looks for unix processes on HPUX servers and alerts if the

%Memory utilization of the process exceeds thresholds.]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>Below are the states and reasons for this monitor:</maml:para>

<maml:para><![CDATA[WARNING : %Memory utilization of the unix process exceeds the

warning threshold.]]></maml:para>

<maml:para><![CDATA[CRITICAL : %Memory utilization of the unix process exceeds the critical

threshold. ]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Resolutions</maml:title>

<maml:para>Login to the server and see why this process is taking such high Memory. Common

resolution would be to bounce the process.</maml:para>

</maml:section>

</MamlContent>

Page 200: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.ProcPerfMon.Mem.RHEL"

Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para><![CDATA[This monitor looks for unix processes on AIX servers and alerts if the

%Memory utilization of the process exceeds thresholds.]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Configuration</maml:title>

<maml:para>All the configuration parameters are controlled by a central config

file.</maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Causes</maml:title>

<maml:para>Below are the states and reasons for this monitor:</maml:para>

<maml:para><![CDATA[WARNING : %Memory utilization of the unix process exceeds the

warning threshold.]]></maml:para>

<maml:para><![CDATA[CRITICAL : %Memory utilization of the unix process exceeds the critical

threshold. ]]></maml:para>

</maml:section>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Resolutions</maml:title>

<maml:para>Login to the server and see why this process is taking such high memory. Common

resolution would be to bounce the process.</maml:para>

</maml:section>

</MamlContent>

Page 201: 31bf3856ad364e35 · 6.1.7000.277 31bf3856ad364e35

</KnowledgeArticle>

<KnowledgeArticle ElementID="Custom.Unix.Process.Monitoring.RHEL.ConfigData" Visible="true">

<MamlContent>

<maml:section xmlns:maml="http://schemas.microsoft.com/maml/2004/10">

<maml:title>Summary</maml:title>

<maml:para>This class defines process monitoring configuration parameters for all Linux servers

only. It is instantiated after reading the lines from the central config file. Each instance of this class

corresponds to a line in the config file. </maml:para>

</maml:section>

</MamlContent>

</KnowledgeArticle>

</KnowledgeArticles>

</LanguagePack>

</LanguagePacks>

</ManagementPack>