Raccolta di Applicazioni .NET/Tempo Contatore delle prestazioni tempo di richiesta (ms)
Lo stato dell'istanza diventa non integro se il tempo medio della richiesta per ogni periodo di tempo definito supera la soglia di monitoraggio.
Quando il numero di eventi prestazioni supera la soglia di monitoraggio configurata, vengono generati avvisi sulle 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 possono essere causati da problemi del file server. I problemi di prestazioni dei servizi Web possono 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.
Un calo delle prestazioni tipico può essere causato da una chiamata al database eccessivamente lunga, una chiamata a un servizio Web eccessivamente lunga, una chiamata ai servizi remoti .NET lenta, una chiamata COM+ lenta o codice inefficiente dell'applicazione.
Target | Microsoft.SystemCenter.Apm.ApplicationInstance | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | Custom | ||
Enabled | False | ||
Instance Name | .NET Apps | ||
Counter Name | Avg. Request 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.ApplicationInstance.AvgRequestTimeMonitor" Accessibility="Public" Enabled="false" Target="Microsoft.SystemCenter.Apm.ApplicationInstance" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="false" Priority="Normal" TypeID="Performance!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.Apm.ApplicationInstance.AvgRequestTimeMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="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>Avg. Request Time</CounterName>
<ObjectName>.NET Apps</ObjectName>
<InstanceName>$Target/Property[Type="Microsoft.SystemCenter.Apm.ApplicationInstance"]/CounterInstance$</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>$Target/Property[Type="Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/AvgRequestTimeMonitorInterval$</Frequency>
<Threshold>$Target/Property[Type="Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/AvgRequestTimeMonitorThreshold$</Threshold>
<Direction>greater</Direction>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>