Próg wydajności: monitor użycia procesora CPU przez proces CCMExec

Microsoft.SystemCenter2012.ConfigurationManager.Perf_Threshold_CCMExec_CPU_Usage_Monitor (UnitMonitor)

Ten monitor umożliwia sprawdzenie, czy proces CCMExec nie powoduje nadmiernego użycia procesora CPU.

Knowledge Base article:

Podsumowanie

Wykorzystanie procesora przez usługę hosta agenta programu SMS w punkcie zarządzania wzrosło do 95 procent w ciągu trzech godzin. Ta wartość będzie się zwiększać do momentu rozwiązania problemu lub zmniejszenia liczby działań na komputerze. Jeżeli wartość progowa jest stale przekraczana, może to spowodować obniżenie wydajności.

Przyczyny

Wartość procentowa czasu procesora może przekroczyć wartość progową z powodu niewystarczającej wydajności przetwarzania bieżących zadań hosta agenta programu SMS.

Rozwiązania

Aby rozwiązać ten problem i zmniejszyć wartość procentową wykorzystania procesora:

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
Użycie procesora CPU przez proces CCMExec jest zbyt wysokie

Wystąpienie {0} obiektu {1} licznika {2} ma wartość {3} w czasie {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/SampleValue$</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>