Raccoglie il contatore delle prestazioni Statistiche .NET/Tempo Contatore delle prestazioni tempo di richiesta (ms)
Questa regola raccoglie il contatore delle prestazioni Statistica .NET/Tempo medio esecuzione per le transazioni.
Il contatore registra il tempo medio (in millisecondi) necessario per l'elaborazione di una richiesta da parte di una transazione. Il conteggio del tempo per ogni richiesta inizia quando la richiesta raggiunge l'applicazione e si interrompe quando la richiesta viene eseguita correttamente o risulta non riuscita in una certa area del codice. Viene quindi calcolata la media della somma di questi tempi per il numero totale di richieste monitorate. Se questo tempo supera in modo costante i 10000 ms, è presente un collo di bottiglia che dovrà essere esaminato.
Questo contatore è disponibile solo quando è abilitato il monitoraggio delle prestazioni dell'applicazione.
Le chiamate al database eccessivamente lunghe potrebbero essere dovute a un problema del server o relativo alla struttura e alla complessità della query. I tempi eccessivamente lunghi delle attività di I/O dei file potrebbero essere causati da problemi del file server. I problemi di prestazioni dei servizi Web potrebbero verificarsi se il servizio Web o il server in cui questo risiede non è disponibile o se si è verificato un problema nel codice del servizio Web. I tempi eccessivamente lunghi per l'esecuzione interna delle applicazioni potrebbero essere causati da codice complesso o inefficiente.
Target | Microsoft.SystemCenter.Apm.Transaction |
Category | PerformanceCollection |
Enabled | True |
Instance Name | .NET Statistic |
Counter Name | Avg execution time |
Frequency | 300 |
Alert Generate | False |
Remotable | False |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | System.Performance.DataProvider | Default |
WriteToDB | WriteAction | Microsoft.SystemCenter.CollectPerformanceData | Default |
WriteToDW | WriteAction | Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData | Default |
<Rule ID="Microsoft.SystemCenter.Apm.Transaction.CollectAvgDurationTime" 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>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="WriteToDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>