성능 임계값: CCMExec CPU 사용량 모니터

Microsoft.SystemCenter2012.ConfigurationManager.Perf_Threshold_CCMExec_CPU_Usage_Monitor (UnitMonitor)

이 모니터는 CCMExec 프로세스의 CPU 사용량이 초과되는지 검사합니다.

Knowledge Base article:

요약

지난 3시간 동안 관리 지점의 SMS Agent Host 서비스에 대한 프로세서 활용률이 95%까지 상승했습니다. 이 상태는 문제가 해결되거나 컴퓨터의 작업 수가 감소할 때까지 계속 증가합니다. 지속적으로 이 임계값을 초과하는 경우 성능이 저하됩니다.

원인

현재 SMS Agent Host 작업에 대한 처리 용량이 부족하기 때문에 프로세서 시간 백분율이 임계값을 초과할 수 있습니다.

해결 방법

이 문제를 해결하고 프로세서 활용률을 낮추려면 다음을 수행합니다.

Element properties:

TargetMicrosoft.SystemCenter2012.ConfigurationManager.ManagementPoint
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Instance NameProcess
Counter Name\% Processor Time
Frequency900
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.ConsecutiveSamplesThreshold
RemotableTrue
AccessibilityPublic
Alert Message
CCMExec CPU 사용률이 너무 높음

{0} 인스턴스의 {1} 개체에 대한 {2} 카운터의 값: {3}, 시간: {4}
RunAsDefault
CommentSIV:GEN0218, CreatedByMyFriend at 10/15/2011 5:24:50 PM

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter2012.ConfigurationManager.Perf_Threshold_CCMExec_CPU_Usage_Monitor" Comment="SIV:GEN0218, CreatedByMyFriend at 10/15/2011 5:24:50 PM" Accessibility="Public" Enabled="onEssentialMonitoring" Target="SCCM!Microsoft.SystemCenter2012.ConfigurationManager.ManagementPoint" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="SystemPerf!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter2012.ConfigurationManager.Perf_Threshold_CCMExec_CPU_Usage_Monitor_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/InstanceName$</AlertParameter1>
<AlertParameter2>$Data/Context/ObjectName$</AlertParameter2>
<AlertParameter3>$Data/Context/CounterName$</AlertParameter3>
<AlertParameter4>$Data/Context/Value$</AlertParameter4>
<AlertParameter5>$Data/Context/TimeSampled$</AlertParameter5>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ConditionFalse" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
<OperationalState ID="ConditionTrue" MonitorTypeStateID="ConditionTrue" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>% Processor Time</CounterName>
<ObjectName>Process</ObjectName>
<InstanceName>CCMExec</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>900</Frequency>
<Threshold>95</Threshold>
<Direction>greater</Direction>
<NumSamples>12</NumSamples>
</Configuration>
</UnitMonitor>