Utilização de processador do agente

Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeMonitor (UnitMonitor)

Monitora todos os processos do agente para identificar possíveis problemas devido ao uso intenso do tempo do processador por parte do agente.

Knowledge Base article:

Resumo

Este monitor monitora a utilização total da CPU por parte do agente do Operations Manager e seus processos relacionados e gera um alerta quando a utilização da CPU excede um limite especificado para um número especificado de amostras consecutivas.

O script subjacente desse monitor opera localizando e obtendo amostras da utilização da CPU para o processo de agente do Operations Manager (HealthService.exe), seus processos host de monitoramento filho (MonitoringHost.exe) e os processos filhos destes últimos (cscript.exe, PowerShell.exe, etc.). O script executa o cálculo três vezes e gera a média das três amostras consecutivas, que ele utiliza para determinar o estado crítico ou íntegro.

Configuração

É possível usar substituições para personalizar os seguintes parâmetros e alterar o comportamento padrão deste monitor:

Esse monitor está desabilitado por padrão para todos os servidores de gerenciamento.

Causas

O excesso da utilização da CPU por parte dos vários dos processos de agente do Operations Manager pode indicar que o agente ou uma de suas dependências subjacentes não está operando corretamente. Se o agente e as dependências subjacentes estiverem devidamente atualizados, significa que o agente está sendo utilizado em excesso no sistema sob monitoramento. Isso pode ter curta duração, devido a uma atualização recente no grupo de gerenciamento, como a implantação de um novo pacote de gerenciamento, ou pode estar relacionado ao fato de que o agente realmente se encontra sob excesso de carga, um caso que talvez exija ajustes.

Resoluções

Para garantir que o agente e suas dependências subjacentes estejam operando corretamente, verifique o seguinte:

Se a condição persistir após a verificação dessas condições, será necessária uma investigação mais detalhada para compreender o que está influenciando a utilização da CPU. Investigue mais a fundo usando qualquer combinação das etapas a seguir:

Quando as causas forem identificadas, qualquer uma das etapas a seguir poderá ser executada para resolver o problema:

Se nenhuma das etapas acima gerar uma solução, contate o Serviço de Atendimento ao Consumidor da Microsoft (http://support.microsoft.com/).

Adicional

Esse monitor tem uma tarefa de diagnóstico relacionada, “Coletar diagnóstico de utilização de processador do agente”, que repete a execução da utilização da CPU. Por padrão, a tarefa de diagnóstico está desabilitada.

Também há uma tarefa no console de Operações, “Obter a utilização de processador do agente”, que repete a execução da amostragem da utilização da CPU. Ao executar a tarefa ”Obter a utilização de processador do agente”, você pode definir os parâmetros de tempo limite e número de amostras. A tarefa retorna uma tabela de resultados. Execute a tarefa Obter a ‘utilização de processador do agente’

Element properties:

TargetMicrosoft.SystemCenter.HealthService
Parent MonitorMicrosoft.SystemCenter.HealthService.PerformanceHealthRollup
CategoryCustom
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter.HealthService.SCOMpercentageCPUTimeCounterMonitorType
RemotableFalse
AccessibilityPublic
Alert Message
Os processos do agente do Operations Manager estão usando muito tempo do processador
A utilização total do processador de todos os processos do agente excedeu o limite no decorrer de várias amostras.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeMonitor" Accessibility="Public" Enabled="onEssentialMonitoring" Target="SCLibrary!Microsoft.SystemCenter.HealthService" ParentMonitorID="Microsoft.SystemCenter.HealthService.PerformanceHealthRollup" Remotable="false" Priority="Normal" TypeID="Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeCounterMonitorType" ConfirmDelivery="true">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="CPUTimeOverThreshold" MonitorTypeStateID="OverThreshold" HealthState="Error"/>
<OperationalState ID="CPUTimeUnderThreshold" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>321</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<SyncTime>00:00</SyncTime>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<Threshold>25</Threshold>
<ConsecutiveSampleCountCritical>6</ConsecutiveSampleCountCritical>
<ConsecutiveSampleCountHealthy>3</ConsecutiveSampleCountHealthy>
</Configuration>
</UnitMonitor>