CPU 사용률

Microsoft.Windows.Server.10.0.Processor.CPUUtilization (UnitMonitor)

총 CPU(프로세서 정보) 사용률을 모니터링합니다.

Knowledge Base article:

요약

시스템 프로세서의 CPU 사용률(Processor Information\% Processor Time)이 임계값을 초과했습니다. 이 임계값이 초과되면 전체 시스템 성능이 크게 저하될 수 있으며 이로 인해 운영 체제 및 응용 프로그램의 성능이 저하될 수 있습니다.

원인

컴퓨터가 지속적으로 부하가 많은 상태에 있는 경우 다음 상태로 인한 것일 수 있습니다.

해결 방법

프로세서 관련 성능 카운터의 최근 기록을 보려면 다음 보기를 사용하면 됩니다.

프로세서 성능 보기 시작

이 문제를 해결하기 위해 관리자는 다음 작업을 수행할 수 있습니다.

1. 서버에서 실행되는 각 프로세스에 대해 % Processor Utilization 카운터를 평가합니다. 이는 작업 관리자 또는 성능 모니터 스냅인을 사용하여 수행할 수 있습니다. 어느 프로세스가 가장 많은 리소스를 사용하고 있는지 확인하고 시간을 두고 모니터링하여 정상 성능 범위로 돌아오는지 여부를 확인하십시오. 성능이 정상적으로 돌아오지 않을 경우 응용 프로그램 관련 진단을 추가로 수행하여 문제를 해결하는 가장 적절한 방법을 확인해야 합니다.

2. 클라이언트 로드가 시간에 따라 증가하고 컴퓨터가 더 이상 요구를 만족시키지 못하는 경우 성능 모니터링 절차를 추가로 수행하여 기본 하드웨어 업그레이드를 통해 서버가 최적의 성능 범위로 돌아올 수 있는지 확인하십시오.

3. 응용 프로그램이 제품 결함으로 인해 올바르지 않은 상태가 된 경우에는 응용 프로그램을 다시 시작해야 할 수 있습니다. 문제가 지속되면 응용 프로그램 공급업체에 문의해야 합니다.

Element properties:

TargetMicrosoft.Windows.Server.10.0.Processor
Parent MonitorMicrosoft.Windows.Server.10.0.Processor.PerformanceRollup
CategoryPerformanceHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.Server.10.0.Processor.Monitortype
RemotableTrue
AccessibilityPublic
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.10.0.Processor.CPUUtilization" Accessibility="Public" Enabled="true" Target="ServervNext!Microsoft.Windows.Server.10.0.Processor" ParentMonitorID="Microsoft.Windows.Server.10.0.Processor.PerformanceRollup" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.Server.10.0.Processor.Monitortype" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<OperationalStates>
<OperationalState ID="OverThreshold" MonitorTypeStateID="OverThreshold" HealthState="Error"/>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
</OperationalStates>
<Configuration>
<CounterName>% Processor Time</CounterName>
<ObjectName>Processor</ObjectName>
<InstanceName>$Target/Property[Type="WindowsServer!Microsoft.Windows.Server.Processor"]/PerfmonInstance$</InstanceName>
<Frequency>180</Frequency>
<Threshold>10</Threshold>
<NumSamples>5</NumSamples>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>