Percentual de Utilização Total de CPU

Microsoft.Windows.Server.10.0.OperatingSystem.TotalCPUUtilization (UnitMonitor)

Monitora a utilização total de CPU desse servidor, correlacionando os contadores de desempenho Informações do Processador\\% Tempo de Processador\_Total e Comprimento da Fila do Processador\Sistema.

Knowledge Base article:

Resumo

A utilização de CPU (Informações do Processador\% Tempo de Processador\_Total e Tamanho de Fila do Sistema) do(s) processador(es) do sistema excedeu o limite. Depois de excedido, o desempenho geral do sistema pode ser reduzido significativamente, o que resultará em desempenho inadequado do sistema operacional e do aplicativo.

Configuração

A rotina de monitoramento Utilização Total da CPU é uma solução altamente configurável que permite que os Operadores definam valores para os contadores de desempenho Sistema\Fila do Processador e Processador\% Tempo de Processador\_Total. Quando os valores dos dois contadores tiverem excedido os limites definidos para vários exemplos consecutivos, ocorrerá uma alteração no estado do monitor. O número de exemplos consecutivos que devem ser utilizados acima do limite antes da alteração do estado também é configurável.

Os valores de limites padrão para a rotina de monitoramento de Utilização Total de CPU incluem:

Parâmetro

Valor Padrão

Limite de Tamanho da Fila da CPU

15

Limite de Percentual de CPU

95

Número de Amostras

3

Observe que Substituições podem ser usadas para alterar qualquer um dos valores de limites definidos acima.

Causas

Quando um computador está sob carga significativa por um período prolongado de tempo, isso pode ser provocado por qualquer uma das seguintes condições:

Resoluções

Para exibir o histórico recente dos contadores de desempenho relacionados ao Processador, use o modo de exibição a seguir:

Iniciar o Modo de Exibição de Desempenho do Processador

Para resolver esse problema, o administrador pode executar as seguintes tarefas:

1. Avaliar o contador % Utilização do Processador para cada um dos processos em execução no servidor. Isso pode ser feito usando o snap-in do Gerenciador de Tarefas ou o Monitoramento de Desempenho. Determine o(s) processo(s) que estão consumindo a maior parte dos recursos e monitore-os ao longo do tempo para determinar se eles parecem estar retornando a intervalos normais de desempenho. Caso contrário, diagnósticos adicionais específicos ao aplicativo devem ser executados para determinar a maneira mais apropriada para resolver o problema.

2. Se for determinado que a carga do cliente aumentou ao longo do tempo e o computador simplesmente não pode mais atender à demanda, execute procedimentos adicionais de monitoramento de desempenho para determinar se atualizações básicas de hardware podem habilitar o computador a retornar para os intervalos ideais de desempenho.

3. Se for determinado que o aplicativo entrou em um estado inadequado, provavelmente devido a um defeito do produto, poderá ser necessário reiniciar o aplicativo. Se o problema persistir, entre em contato com o fornecedor do aplicativo.

Element properties:

TargetMicrosoft.Windows.Server.10.0.OperatingSystem
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.10.0.CPUUtilization.Monitortype
RemotableTrue
AccessibilityPublic
Alert Message
O percentual de Utilização Total de CPU é muito alta
O limite do contador de desempenho Informações do Processador\\% Tempo de Processador\_Total foi excedido. Os valores que excederam o limite são: {0}\% de CPU e um comprimento da fila de processador igual a {1}.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.10.0.OperatingSystem.TotalCPUUtilization" Accessibility="Public" Enabled="true" Target="ServervNext!Microsoft.Windows.Server.10.0.OperatingSystem" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.Server.10.0.CPUUtilization.Monitortype" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.10.0.OperatingSystem.TotalCPUUtilization.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='PctUsage']$</AlertParameter1>
<AlertParameter2>$Data/Context/Property[@Name='QueueLength']$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OverThreshold" MonitorTypeStateID="CPUUtilizationHigh" HealthState="Error"/>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="CPUUtilizationNormal" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<TargetComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</TargetComputerName>
<CPUPercentageThreshold>95</CPUPercentageThreshold>
<CPUQueueLengthThreshold>15</CPUQueueLengthThreshold>
<NumSamples>3</NumSamples>
<CounterName>% Processor Time</CounterName>
<ObjectName>Processor Information</ObjectName>
<InstanceName>_Total</InstanceName>
<AllInstances>false</AllInstances>
</Configuration>
</UnitMonitor>