Configuração de Monitorização do Lado do Cliente APM

Microsoft.SystemCenter.Apm.Infrastructure.Monitoring.ApmAgent.CSMConfigurationConflict.Monitor (UnitMonitor)

Este monitor verifica se um agente de APM tem vindo a processar corretamente a configuração de Monitorização do Lado do Cliente de APM. O monitor passa ao estado de Aviso quando é detetada uma configuração inválida ou um conflito de configuração.

Knowledge Base article:

Resumo

O estado da instância fica danificado quando a Configuração de monitorização do Lado do Cliente do APM .NET é inválida ou está em conflito.

Causas

A infraestrutura de configuração do APM gera a configuração para o agente de Monitorização do Lado do Cliente do APM .NET com base nas definições especificadas no modelo de Monitorização do Desempenho da Aplicação .NET, nos pacotes de gestão e numa série de ficheiros que contêm as diretivas de configuração predefinidas que vêm pré-instaladas com o agente. Durante este processo, podem existir erros dependendo dos problemas do agente ou de definições em conflito, o que impedirá que a configuração seja carregada e utilizada com êxito. Razões para este problema: definições erradas especificadas durante o processo de configuração, definições em conflito para a mesma aplicação especificada em modelos diferentes, ou mesmo o facto de o agente de instalação estar danificado e a precisar de reparação.

A causa mais comum para este tipo de erro é um conflito de configuração, como, por exemplo: vários modelos especificando definições em conflito para a mesma aplicação.

A monitorização do lado do cliente APM é aplicada por Web site e apenas uma configuração pode ser aplicada a qualquer Web site específico. Se está a configurar a monitorização para diferentes aplicações hospedadas no mesmo Web site, algumas definições de configuração têm de ser iguais para todas as aplicações monitorizadas do processo, uma vez que irão partilhar um único Recoletor de Monitorização do Lado do Cliente (CSM).

Em alguns casos, um erro deste tipo também pode ser causado por uma chave de encriptação interrompida.

A menos que o conflito de configuração seja corrigido, a monitorização do desempenho de aplicações do lado do cliente não irá funcionar conforme esperado para este Web site.

Resoluções

Verifique o Contexto de Alerta e o Registo de Eventos do Operations Manager sobre este agente para obter detalhes adicionais sobre a causa do conflito. O registo de eventos pode conter várias mensagens para o único conflito ou erro e irá ajudá-lo a isolar os grupos de aplicação que estão a causar os conflitos de configuração no agente.

Utilizando as informações fornecidas nos erros, certifique-se de que os limiares e outras definições foram configurados de forma igual ao longo de cada grupo de aplicações especificado. Para atualizar a configuração do grupo de aplicações:

Utilizando o assistente de propriedades, pode ajustar as definições em conflito nos grupos de aplicações.

No caso de uma conta ExecutarComo interrompida,basta abrir o modelo de Monitorização da Aplicação .NET e guardá-lo novamente para que todas as definições, juntamente com a Conta ExecutarComo, sejam escritas novamente no formato correto.

Element properties:

TargetMicrosoft.SystemCenter.Apm.ApmAgent
Parent MonitorSystem.Health.ConfigurationState
CategoryConfigurationHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableFalse
AccessibilityPublic
Alert Message
Conflito ou Erro de Configuração de Monitorização do Lado do Cliente de APM
O Agente APM encontrou um erro ao processar a configuração de Monitorização do Lado do Cliente APM. Isto pode ser causado por um problema do agente ou por uma configuração incorreta ou em conflito especificada em vários modelos.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.Apm.Infrastructure.Monitoring.ApmAgent.CSMConfigurationConflict.Monitor" Accessibility="Public" Enabled="true" ParentMonitorID="Health!System.Health.ConfigurationState" Target="AI!Microsoft.SystemCenter.Apm.ApmAgent" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" Remotable="false" Priority="Normal" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.Apm.Infrastructure.Monitoring.ApmAgent.CSMConfigurationConflict.Monitor.AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="NOConflict" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
<OperationalState ID="Conflict" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>Operations Manager</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">.NET app monitoring</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">34240</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">34246</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">34247</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">34248</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">34249</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">34250</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>Operations Manager</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">.NET app monitoring</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">34243</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>