.NET CSM-Anwendungen/Durchschn. Ausführungszeit (ms) erfassen

Microsoft.SystemCenter.Apm.CsmApplicationInstance.AvgRequestTimeMonitor (UnitMonitor)

Knowledge Base article:

Zusammenfassung

Ein Wechsel in den Instanzstatus "Fehlerhaft" erfolgt, wenn der Monitorschwellenwert von der durchschnittlichen Anforderungszeit zum Laden einer Webseite im Browser pro definierten Zeitraum überschritten wird.

Ursachen

Leistungswarnungen für Anwendungen werden erzeugt, wenn die Durchschnittsdauer der Client-Leistungsereignisse den konfigurierten Monitorschwellenwert überschreitet.

Übermäßig lange Wartezeiten bei der Netzwerkanforderung können durch ein unausgeglichenes Netzwerk verursacht werden.

Eine langsame Serververarbeitung kann durch einen komplexen oder ineffizienten Quellcode verursacht werden.

Leistungsprobleme beim Laden einer Seite können entweder durch ein großes Seitenformat oder durch eine große Anzahl an JavaScript-Elementen verursacht werden.

Window.onLoad-Leistungsprobleme können durch ein langsames Ausführen von JavaScript-Handlern verursacht werden.

Lösungen

In der Regel werden lange Wartezeiten beim Aufruf einer Seite durch ein unausgeglichenes Netzwerk, eine lange Serververarbeitungszeit, eine lange Seitenladezeit oder eine lange Window.OnLoad-Zeit verursacht.

Element properties:

TargetMicrosoft.SystemCenter.Apm.CsmApplicationInstance
Parent MonitorSystem.Health.PerformanceState
CategoryCustom
EnabledFalse
Instance Name.NET CSM Apps
Counter NameAverage page request execution time
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.ConsecutiveSamplesThreshold
RemotableFalse
AccessibilityPublic
Alert Message
.NET CSM-Anwendungen/Durchschn. Anforderungszeit hat den Schwellenwert überschritten
Von dem Leistungsindikator ".NET CSM-Anwendungen/Durchschn. Ausführungszeit" wurde der konfigurierte Schwellenwert von {0} ms überschritten. Der Leistungsindikatorwert lag bei {1} ms.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.Apm.CsmApplicationInstance.AvgRequestTimeMonitor" Accessibility="Public" Enabled="false" Target="Microsoft.SystemCenter.Apm.CsmApplicationInstance" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="false" Priority="Normal" TypeID="Performance!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.Apm.CsmApplicationInstance.AvgRequestTimeMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/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/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Average page request execution time</CounterName>
<ObjectName>.NET CSM Apps</ObjectName>
<InstanceName>$Target/Property[Type="Microsoft.SystemCenter.Apm.CsmApplicationInstance"]/CounterInstance$</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/AvgRequestTimeMonitorInterval$</Frequency>
<Threshold>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/AvgRequestTimeMonitorThreshold$</Threshold>
<Direction>greater</Direction>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>