Genera avviso per eventi CSM di prestazioni transazione

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

Knowledge Base article:

Riepilogo

Quando il numero totale di eventi delle prestazioni lato client per una transazione configurata supera la soglia di monitoraggio, lo stato dell'oggetto viene modificato in non integro.

Cause

Gli avvisi di prestazioni lato client vengono generati quando il tempo di caricamento della pagina per l'applicazione Web supera la soglia configurata. Il tempo totale è misurato nel browser Web, è correlato al tempo di elaborazione del server ed è quindi separato nelle seguenti categorie disponibili nei dettagli degli eventi:

Quando il tempo di caricamento della pagina supera la soglia:

Quando il tempo di risposta per le chiamate AJAX supera la soglia:

La notevole quantità di tempo trascorso in una o più categorie potrebbe indicare la causa principale del problema di prestazioni. Ad esempio, il tempo impiegato per l'elaborazione delle richieste di rete e delle risposte potrebbe suggerire una connettività di rete lenta. Lunghi tempi di risposta del server potrebbero essere causati da codice lato server con esecuzione lenta e potrebbero essere risolti ulteriormente esaminando gli avvisi di prestazioni sul lato server associati. Un caricamento DOM lento potrebbe essere collegato a una complessità eccessiva o alle dimensioni della pagina dell'applicazione, o potrebbe indicare anche prestazioni lente del browser client. Tempi di esecuzione lunghi per l'evento Window.OnLoad() o JavaScript AJAX lenti indicano codice inefficiente nella pagina o potrebbero essere dovuti a prestazioni lente del browser client. Un gran numero di reindirizzamenti di pagina potrebbe essere provocato da codice dell'applicazione complesso o poco efficiente.

Soluzioni

Gli avvisi relativi alle prestazioni lato client vengono generati quando il tempo di esecuzione supera la soglia configurata. Le cause tipiche del degrado delle prestazioni delle applicazioni potrebbero essere un rallentamento delle prestazioni del server Web, una rete lenta o codice dell'applicazione inefficiente.

È 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 apre l'evento nella console Application Diagnostics. 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.CsmWebPageTransaction
CategoryAlert
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableFalse
Alert Message
Eccezione prestazioni pagina client
{0}. È stata superata la soglia configurata di {1} ms per {2} su {3} per la transazione {4}. Per ulteriori informazioni utilizzare il seguente collegamento: $Url[Query='{5}']/APMEvent$

Member Modules:

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

Source Code:

<Rule ID="Microsoft.SystemCenter.Apm.CsmWebPageTransaction.AlertPerformanceAspectRule" Enabled="false" ConfirmDelivery="false" Target="Microsoft.SystemCenter.Apm.CsmWebPageTransaction" Remotable="false">
<Category>Alert</Category>
<DataSources>
<DataSource ID="LOBProvider" TypeID="Microsoft.SystemCenter.Apm.Csm.CsmWebPageTransaction.LobDataProvider">
<Name>$Target/Host/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$ (Client)</Name>
<AspectType>performance</AspectType>
<RootName>$Target/Property[Type="Microsoft.SystemCenter.Apm.CsmWebPageTransaction"]/PageName$</RootName>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="AlertWriteAction" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name='Microsoft.SystemCenter.Apm.CsmWebPageTransaction.AlertPerformanceAspectRule.AlertMessage']$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventData/log/properties/property[name="scomProblemDescription"]/value$</AlertParameter1>
<AlertParameter2>$Data/EventData/log/alertingThreshold$</AlertParameter2>
<AlertParameter3>$Target/Host/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$</AlertParameter3>
<AlertParameter4>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter4>
<AlertParameter5>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.TransactionBase"]/TransactionName$</AlertParameter5>
<AlertParameter6>$Data/EventData/ViewDetail$</AlertParameter6>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventData/eventConsolidationHash$</SuppressionValue>
</Suppression>
<Custom1>Performance</Custom1>
</WriteAction>
</WriteActions>
</Rule>