.NET-statistiek/Gem. aanvraagtijd (sec) verzamelen

Microsoft.SystemCenter.Apm.Transaction.CollectAvgDurationTimeSeconds (Rule)

Hiermee wordt het prestatiemeteritem .NET-statistiek/Gem. aanvraagtijd (sec) verzameld

Knowledge Base article:

Samenvatting

Met deze regel wordt het prestatiemeteritem Gemiddelde uitvoeringstijd van statistische .NET-gegevens voor transacties verzameld.

Het item legt de gemiddelde tijd (in seconden) vast die het duurt voordat een aanvraag door een transactie is verwerkt. De tijdopname van iedere aanvraag begint zodra de aanvraag de toepassing heeft bereikt en stopt zodra de aanvraag probleemloos is verlopen of als er ergens in de code een fout optreedt. De som van deze tijden is een gemiddelde van het totale aantal bewaakte aanvragen. Als deze tijd voortdurend de 10.000 ms overschrijdt, duidt dit op een knelpunt dat moet worden onderzocht.

Dit item is alleen beschikbaar wanneer bewaking van de toepassingsprestaties is ingeschakeld.

Uitzonderlijk lange databaseaanroepen kunnen worden veroorzaakt door een probleem met de server of met de structuur en complexiteit van de query. Een lange I/O-duur van bestanden kan worden veroorzaakt door problemen met de bestandsserver. Er kunnen problemen optreden met de prestaties van webservices als de webservice of de server waarop deze wordt uitgevoerd, niet bereikbaar is of als de code van de webservice fouten bevat. Lange interne uitvoeringstijden voor toepassingen zijn mogelijk het gevolg van complexe of inefficiënte code.

Element properties:

TargetMicrosoft.SystemCenter.Apm.Transaction
CategoryPerformanceCollection
EnabledTrue
Instance Name.NET Statistic
Counter NameAvg execution time
Frequency300
Alert GenerateFalse
RemotableFalse

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource System.Performance.DataProvider Default
Mapper ConditionDetection System.Performance.DataGenericMapper Default
WriteToDB WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
WriteToDW WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="Microsoft.SystemCenter.Apm.Transaction.CollectAvgDurationTimeSeconds" Enabled="true" Target="Microsoft.SystemCenter.Apm.Transaction" ConfirmDelivery="false" Remotable="false" Priority="Normal" DiscardLevel="100">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Performance!System.Performance.DataProvider">
<ComputerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Avg execution time</CounterName>
<ObjectName>.NET Statistic</ObjectName>
<InstanceName>$Target/Property[Type="Microsoft.SystemCenter.Apm.Transaction"]/CounterInstance$</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>300</Frequency>
<ScaleBy>1000</ScaleBy>
</DataSource>
</DataSources>
<ConditionDetection TypeID="Performance!System.Performance.DataGenericMapper" ID="Mapper">
<ObjectName>.NET Statistic</ObjectName>
<CounterName>Avg execution time (seconds)</CounterName>
<InstanceName>$Target/Property[Type="Microsoft.SystemCenter.Apm.Transaction"]/CounterInstance$</InstanceName>
<Value>$Data/Value$</Value>
</ConditionDetection>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>