Zbiera dane licznika wydajności Statystyka .NET/średni czas żądania (ms)
Ta zasada zbiera dane z licznika wydajności Statystyka .NET/średni czas wykonania dla transakcji.
Ten licznik rejestruje średni czas (w milisekundach) przetwarzania żądania przez transakcję. Pomiar czasu przetwarzania każdego żądania jest rozpoczynany, gdy dotrze ono do aplikacji, a zatrzymywany, gdy żądanie zostanie pomyślnie wykonane lub wykonywanie kodu zostanie przerwane z powodu błędu. Na podstawie sumy czasów wszystkich monitorowanych żądań jest obliczany średni czas żądania. Jeśli systematycznie przekracza on 10000 ms, oznacza to istnienie wąskiego gardła, które należy zbadać.
Ten licznik jest dostępny tylko jeśli włączone jest monitorowanie wydajności aplikacji.
Zbyt długie wywołania bazy danych mogą być spowodowane problemami z serwerem lub strukturą i złożonością kwerendy. Długie czasy trwania operacji we/wy mogą wynikać z problemów z serwerem plików. Problemy z wydajnością usług sieci Web mogą wynikać z niedziałania usługi bądź serwera, na którym jest uruchamiana, lub problemów z kodem usługi. Zbyt długie czasy wykonania aplikacji mogą być wynikiem złożonego lub mało wydajnego kodu.
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>