JVM ガベージ コレクターのコレクション数の変動率

Microsoft.JEE.ApplicationServer.PerformanceData.GCCollectionCountDelta (Rule)

Java 仮想マシンの指定されたガベージ コレクターのサンプル間におけるガベージ コレクション数の変動

Knowledge Base article:

概要

GCCollectionCountDelta ルールは、サーブレットの Stats 呼び出しに /Stats クエリを使用して、Java 仮想マシンからパフォーマンス データを収集します。このルールは、現在と前回のサンプルの値の差を計算します。

Java 仮想マシンのサンプル間におけるガベージ コレクション数の変動。

このパフォーマンス データは、システム データベースとデータ ウェアハウスの両方に書き込まれます。

Element properties:

TargetMicrosoft.JEE.GarbageCollector
CategoryPerformanceCollection
EnabledTrue
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.JEE.Monitoring.UrlProbe.Stats.DataSource Default
PerfMapper ConditionDetection Microsoft.JEE.DeltaMapper Default
WriteToDB WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
WriteToDW WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="Microsoft.JEE.ApplicationServer.PerformanceData.GCCollectionCountDelta" Target="Microsoft.JEE.GarbageCollector" Enabled="true" Remotable="true">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.JEE.Monitoring.UrlProbe.Stats.DataSource">
<ComputerName>$Target/Host/Property[Type="Microsoft.JEE.ApplicationServer.Monitored.Instance"]/HostName$</ComputerName>
<Protocol>$Target/Host/Property[Type="Microsoft.JEE.ApplicationServer.Monitored.Instance"]/Protocol$</Protocol>
<Port>$Target/Host/Property[Type="Microsoft.JEE.ApplicationServer.Monitored.Instance"]/Port$</Port>
<BaseURL/>
<URLSuffix/>
<IntervalSeconds>900</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
</DataSource>
</DataSources>
<ConditionDetection TypeID="Microsoft.JEE.DeltaMapper" ID="PerfMapper">
<ObjectName>Garbage Collector</ObjectName>
<CounterName>JVM Garbage Collector Collection Count Change Rate</CounterName>
<InstanceName>$Target/Property[Type="Microsoft.JEE.GarbageCollector"]/GarbageCollectorName$</InstanceName>
<!-- Need to find the GCCollectionCount that has a sibling element -->
<!-- called GCName with a value of (for example) "PS Scavenge" -->
<!-- XPath should look like: -->
<!-- /Stats/GC/Properties/GCCollectionCount[../GCName = "PS Scavenge"] -->
<Value>$Data/Stats/GC/Properties/GCCollectionCount[../GCName = "$Target/Property[Type="Microsoft.JEE.GarbageCollector"]/GarbageCollectorName$"]$</Value>
<NumSamples>1</NumSamples>
<Absolute>true</Absolute>
</ConditionDetection>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>