Gerar Alerta para Eventos APM de Conetividade da Transação

Microsoft.SystemCenter.Apm.MvcTransaction.AlertConnectivityAspectRule (Rule)

Knowledge Base article:

Resumo

O estado da instância fica em mau estado de funcionamento se o número total de eventos de conectividade por período de tempo definido exceder o limiar do monitor.

Causas

Os alertas de conectividade são gerados como resultado de erros de conectividade da aplicação que impedem o fluxo normal da aplicação. O campo de detalhes dos alertas apresenta uma descrição que contém o nome da função que falhou e o contexto de operações para a resolução do problema. As exceções de configuração devem-se a problemas que são normalmente resolvidos por alterações de ambiente ou configuração sem aceder ao código de origem. Este tipo de problema pode estar relacionado com um servidor de base de dados inacessível ou incorreto, serviço Web, ficheiro não existente, etc.

Resoluções

Os alertas de conectividade têm origem em exceções não processadas devido a problemas em aceder a recursos externos. Para resolver estes problemas, verifique

1) a descrição do alerta e dos eventos,

2) destinos de operação, por exemplo, o Microsoft SQL Server,

3) método que tentou executar, por exemplo, ligar a um servidor e

4) detalhes da ligação de contexto de segurança e de identidade de execução. Utilizando estas informações, verifique o ambiente e a configuração para garantir a disponibilidade dos recursos externos.

Element properties:

TargetMicrosoft.SystemCenter.Apm.MvcTransaction
CategoryAlert
EnabledFalse
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableFalse
Alert Message
Exceção de Conectividade de Transação
Ocorreu uma falha de conectividade na transação {5} para a aplicação {0} em {1}. Foi acionada uma exceção de tipo '{2}' com uma mensagem de '{3}' em '{4}'. Para mais informações, utilize a seguinte hiperligação: $Url[Query='{6}']/APMEvent$

Member Modules:

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

Source Code:

<Rule ID="Microsoft.SystemCenter.Apm.MvcTransaction.AlertConnectivityAspectRule" Enabled="false" ConfirmDelivery="false" Target="Microsoft.SystemCenter.Apm.MvcTransaction" Remotable="false">
<Category>Alert</Category>
<DataSources>
<DataSource ID="LOBProvider" TypeID="Microsoft.SystemCenter.Apm.MvcTransaction.LobDataProvider.ExceptionAspect">
<Name>$Target/Host/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$</Name>
<AspectType>connectivity</AspectType>
<ControllerName>$Target/Property[Type="Microsoft.SystemCenter.Apm.MvcTransaction"]/ControllerName$</ControllerName>
<ActionName>$Target/Property[Type="Microsoft.SystemCenter.Apm.MvcTransaction"]/ActionName$</ActionName>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="AlertWriteAction" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name='Microsoft.SystemCenter.Apm.MvcTransaction.AlertConnectivityAspectRule.AlertMessage']$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter2>
<AlertParameter3>$Data/EventData/exceptionclass$</AlertParameter3>
<AlertParameter4>$Data/EventData/message$</AlertParameter4>
<AlertParameter5>$Data/EventData/name$</AlertParameter5>
<AlertParameter6>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.TransactionBase"]/TransactionName$</AlertParameter6>
<AlertParameter7>$Data/EventData/ViewDetail$</AlertParameter7>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventData/eventConsolidationHash$</SuppressionValue>
</Suppression>
<Custom1>Connectivity</Custom1>
</WriteAction>
</WriteActions>
</Rule>