Genera avviso per evento APM prestazioni

Microsoft.SystemCenter.Apm.ApplicationInstance.AlertPerformanceAspectRule (Rule)

Knowledge Base article:

Riepilogo

Lo stato dell'istanza diventa non integro se il numero totale di eventi prestazioni per ogni periodo di tempo definito supera la soglia di monitoraggio.

Cause

Gli avvisi relativi alle prestazioni dell'applicazione vengono generati quando il tempo di esecuzione supera la soglia di avviso configurata. Nei dettagli dell'avviso è specificato il tempo di esecuzione in percentuale impiegato per i vari tipi di chiamate di funzione. 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.

Soluzioni

Gli avvisi relativi alle prestazioni dell'applicazione vengono generati quando il tempo di esecuzione supera la soglia configurata. 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 o una chiamata COM+ lenta o codice inefficiente dell'applicazione.

È possibile accedere a dettagli aggiuntivi su questo avviso utilizzando il collegamento ai dettagli dell'evento disponibile nella descrizione dell'avviso e sulla scheda Contesto avviso. Il collegamento aprirà l'evento nella console Diagnostica applicazioni. La console Diagnostica applicazioni contiene informazioni specifiche per questo evento nonché per gli eventi correlati e simili che sono stati rilevati.

Element properties:

TargetMicrosoft.SystemCenter.Apm.ApplicationInstance
CategoryAlert
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableFalse
Alert Message
Eccezione prestazioni server
'{0}' ha superato la soglia configurata di {1} ms su: {2}. Per ulteriori informazioni utilizzare il seguente collegamento: $Url[Query='{3}']/APMEvent$

Member Modules:

ID Module Type TypeId RunAs 
LOBProvider DataSource Microsoft.SystemCenter.Apm.LobDataProvider Default
AlertWriteAction WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SystemCenter.Apm.ApplicationInstance.AlertPerformanceAspectRule" Enabled="false" ConfirmDelivery="true" Target="Microsoft.SystemCenter.Apm.ApplicationInstance" Remotable="false">
<Category>Alert</Category>
<DataSources>
<DataSource ID="LOBProvider" TypeID="Microsoft.SystemCenter.Apm.LobDataProvider">
<Name>$Target/Property[Type="Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$</Name>
<AspectType>performance</AspectType>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="AlertWriteAction" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name='Microsoft.SystemCenter.Apm.ApplicationInstance.AlertPerformanceAspectRule.AlertMessage']$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventData/problemDescription$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="Microsoft.SystemCenter.Apm.ApplicationInstance"]/PerformanceThreshold$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter3>
<AlertParameter4>$Data/EventData/ViewDetail$</AlertParameter4>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventData/eventConsolidationHash$</SuppressionValue>
</Suppression>
<Custom1>Performance</Custom1>
</WriteAction>
</WriteActions>
</Rule>