EVA Total Req/s

EVA.Total.Reqs (Rule)

Element properties:

TargetEVAPerformanceMonitor
CategoryPerformanceCollection
EnabledTrue
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.TimedScript.PerformanceProvider Default
WriteToDB WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
WriteToDW WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="EVA.Total.Reqs" Enabled="true" Target="EVAPerformanceMonitor" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="MicrosoftWindowsLibrary6062780!Microsoft.Windows.TimedScript.PerformanceProvider">
<IntervalSeconds>300</IntervalSeconds>
<SyncTime>00:00</SyncTime>
<ScriptName>EVAPerf_Total_Reqs.vbs</ScriptName>
<Arguments/>
<ScriptBody><Script><![CDATA[
' Extract host port performance Total I/O
'
'
'Time,Disk Group,Total Read Hit Req/s,Total Read Hit MB/s,Average Read Hit Latency (ms),Total Read Miss Req/s,Total Read Miss MB/s,Average Read Miss Latency (ms),Total Write Req/s,Total Write MB/s,Average Write Latency (ms),Total Flush MB/s,Total Mirror MB/s,Total Prefetch MB/s,Ctlr,Node
'

SetLocale("en-us")
WScript.Sleep 20000
Total=0
linenumber=0
FileName = "C:\temp\EVAPERF_vdg.csv"
Set fso = CreateObject("Scripting.FileSystemObject")
Set oAPI = CreateObject("MOM.ScriptAPI")
Const ForReading = 1

If fso.FileExists(FileName) = 0 Then
wscript.echo "File not found."
wscript.quit
End If

Set oFile = fso.GetFile(FileName)

Set oStream = oFile.OpenAsTextStream(ForReading, TristateUseDefault)

Do While Not oStream.AtEndOfStream
sRecord=oStream.ReadLine
if linenumber <> 0 and sRecord <> "" Then
tmp = split(sRecord,",")
if StrComp(tmp(15),Name) <> 0 and Name <> "" Then
Set propertyBag = oAPI.CreatePropertyBag()
propertyBag.AddValue "Name", name
propertyBag.AddValue "Value", Total
oAPI.AddItem(propertyBag)
Total=0
End If
Total = Total + tmp(8) + tmp(2) + tmp(5)
name = tmp(15)
End If
linenumber = linenumber+1
Loop
oStream.Close

Set propertyBag = oAPI.CreatePropertyBag()
propertyBag.AddValue "Name", name
propertyBag.AddValue "Value", Total
oAPI.AddItem(propertyBag)

oAPI.ReturnItems

]]></Script></ScriptBody>
<TimeoutSeconds>60</TimeoutSeconds>
<ObjectName>HP EVA</ObjectName>
<CounterName>EVA Total Req/s</CounterName>
<InstanceName>$Data/Property[@Name='Name']$</InstanceName>
<Value>$Data/Property[@Name='Value']$</Value>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SystemCenter!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>