Leistungsindikator ".NET-Statistik/Durchschn. Ausführungszeit (ms) erfassen"
Fehler im Instanzstatus treten dann auf, wenn die durchschnittliche Anforderungszeit pro definiertem Zeitraum den Monitorschwellenwert überschreitet.
Leistungswarnungen für Transaktionen werden erzeugt, wenn die Anzahl der Leistungsereignisse den konfigurierten Monitorschwellenwert überschreitet.
Übermäßig lange Datenbankaufrufe können entweder an einem Problem mit dem Server oder an der Struktur und Komplexität der Anfrage liegen. Lange Datei-E/A-Zeiten können durch Dateiserverprobleme verursacht werden. Leistungsprobleme mit Webdiensten treten möglicherweise auf, weil der Webdienst oder der Server, auf dem er sich befindet, nicht zur Verfügung steht oder ein Problem im Webdienstcode vorliegt. Lange interne Ausführungszeiten bei Anwendungen können an einem komplexen oder ineffizienten Code liegen.
Die typischen Ursachen für eine beeinträchtigte Anwendungsleistung können ein langer Datenbankaufruf, ein langer Webdienstaufruf, ein langsamer .NET-Remoting-Aufruf, ein langsamer COM+-Aufruf oder ein ineffizienter Anwendungscode sein.
Target | Microsoft.SystemCenter.Apm.Transaction | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | Custom | ||
Enabled | False | ||
Instance Name | .NET Statistic | ||
Counter Name | Avg execution time | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | System.Performance.ConsecutiveSamplesThreshold | ||
Remotable | False | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SystemCenter.Apm.Transaction.AvgRequestTimeMonitor" Accessibility="Public" Enabled="false" Target="Microsoft.SystemCenter.Apm.Transaction" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="false" Priority="Normal" TypeID="Performance!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.Apm.Transaction.AvgRequestTimeMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="Microsoft.SystemCenter.Apm.TransactionBase"]/AvgRequestTimeMonitorThreshold$</AlertParameter1>
<AlertParameter2>$Data/Context/SampleValue$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="ConditionTrue" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<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>$Target/Property[Type="Microsoft.SystemCenter.Apm.TransactionBase"]/AvgRequestTimeMonitorInterval$</Frequency>
<Threshold>$Target/Property[Type="Microsoft.SystemCenter.Apm.TransactionBase"]/AvgRequestTimeMonitorThreshold$</Threshold>
<Direction>greater</Direction>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>