此監視會檢查 SMSExec 處理程序的 CPU 使用量是否過量。
SMS Executive 服務的處理器使用率已有持續三個多小時增加到超過 95%。 除非獲得解決或電腦上的活動量減少,否則這個狀況會愈來愈嚴重。 如果一直超出這個閾值,效能將會降低。
處理器時間百分比超過閾值可能是因為處理容量不足,無法應付目前的負載。
若要解決此問題並減少處理器使用率百分比:
增加額外的處理器。
升級為速度較快的處理器。
將處理程序移到其他電腦,以減少 SMS Executive 服務的負載。 請將伺服器角色 (例如發佈點和管理點) 卸載至專用伺服器。
如果這項警示產生太多誤判,您可以修改規則內容的閾值索引標籤,以指定更適合您的環境的值。
處理器時間百分比是這個處理程序的所有執行緒使用處理器執行指令所經過時間的百分比。 指令是電腦中的基本執行單位;執行緒是執行指令的物件;處理程序是程式執行時所建立的物件。 這個計數也包含用於處理部分硬體中斷以及設陷條件而執行的程式碼。 在多處理器電腦上,此計數器的最大值是 100% 乘以處理器數目。
Target | Microsoft.SystemCenter2012.ConfigurationManager.SiteServerRoleBaseClass | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | True | ||
Instance Name | Process | ||
Counter Name | \% Processor Time | ||
Frequency | 900 | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | System.Performance.ConsecutiveSamplesThreshold | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default | ||
Comment | SIV:GEN0216, CreatedByMyFriend at 10/15/2011 5:24:48 PM |
<UnitMonitor ID="Microsoft.SystemCenter2012.ConfigurationManager.Perf_Threshold_SMSExec_CPU_Usage_Monitor" Comment="SIV:GEN0216, CreatedByMyFriend at 10/15/2011 5:24:48 PM" Accessibility="Public" Enabled="onEssentialMonitoring" Target="SCCM!Microsoft.SystemCenter2012.ConfigurationManager.SiteServerRoleBaseClass" 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_SMSExec_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>SMSExec</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>900</Frequency>
<Threshold>95</Threshold>
<Direction>greater</Direction>
<NumSamples>12</NumSamples>
</Configuration>
</UnitMonitor>