Aracı işlemci kullanımı

Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeMonitor (UnitMonitor)

Çok fazla işlemci zamanı kullanan aracıyla ilgili olası sorunları belirlemek için tüm aracı işlemcilerini izler.

Knowledge Base article:

Özet

Bu izleyici Operations Manager aracısının ve ilgili işlemlerin toplam CPU kullanımını hesaplar ve belirtilen sayıdaki ardışık örnekler için CPU kullanımı belirlenen eşiği aştığında bir uyarı oluşturur.

Bu izleyicinin temel aldığı betik Operations Manager aracı işlemleri (HealthService.exe), kendi alt izleme ana bilgisayar işlemleri (MonitoringHost.exe) ve bu izleme ana bilgisayarı işlemlerinin alt işlemleri (cscript.exe, PowerShell.exe, vs.) için CPU kullanımını bulur ve örneklendirir. Betik hesaplamayı üç kez çalıştırır ve bu ardışık üç örneğin ortalamasının çıktısını alır, ardından bu değer bu izleyici tarafından kritik veya iyi durumun belirlenmesi için kullanılır.

Yapılandırma

Bu izleyicinin varsayılan davranışında değişiklik yapmak için aşağıdaki parametreleri özelleştirmek için geçersiz kılma işlemlerini kullanabilirsiniz:

Bu izleyici varsayılan olarak tüm yönetim sunucuları için devre dışıdır.

Nedenler

Çeşitli Operations Manager aracı işlemlerinin aşırı CPU kullanması aracının veya temel aldığı bağımlılıklardan birinin düzgün şekilde çalışmadığını gösterebilir. Aracı ve temel aldığı bağımlılıkları düzgün şekilde güncelleştirilmişse, izlenmekte olan sistemdeki aracı aşırı kullanılıyordur. Bu durum, yeni bir yönetim paketi dağıtımı gibi yönetim grubunda yapılan yeni bir güncelleştirme nedeniyle kısa süreli olabilir veya aracının gerçekten aşırı yük altında olmasından kaynaklanabilir ve bu durumda ayarlama yapılması gerekir.

Çözümlemeler

Aracının ve temel aldığı bağımlılıklarının düzgün şekilde çalıştıklarından emin olmak için aşağıdakileri kontrol edin:

Durum bu yapılandırmalar doğrulandıktan sonra da devam ediyorsa, CPU kullanımına neyin neden olduğunun belirlenebilmesi için daha kapsamlı bir araştırma yapılması gerekir. Aşağıdaki adımların herhangi bir bileşimini kullanarak daha kapsamlı bir araştırma yapın:

Neden veya nedenler belirlendiğinde sorunu çözmek için aşağıdaki adımlardan biri izlenebilir:

Yukarıdaki adımların sorunu çözmemesi halinde Microsoft Müşteri Hizmetleri ve Desteği'ne başvurun (http://support.microsoft.com/).

Ek bilgiler

Bu izleyiciyle ilgili, "Aracı işlemci kullanımının toplanması tanılama işlemi" adında, CPU kullanımı örneklendirmesini yeniden çalıştıran bir tanılama görevi bulunmaktadır. Bu tanılama görevi varsayılan olarak devre dışıdır.

Ayrıca Operations konsolunda da, "Aracı işlemci kullanımını al" adında, CPU kullanımı örneklendirmesini yeniden çalıştıran bir tanılama görevi bulunmaktadır. "Aracı işlemci kullanımını al" görevini çalıştırdığınızda, zaman aşımı ve örnek sayısı parametrelerini ayarlayabilirsiniz. Görev bir sonuç tablosu getirir. "Aracı işlemci kullanımını al" görevini çalıştır

Element properties:

TargetMicrosoft.SystemCenter.HealthService
Parent MonitorMicrosoft.SystemCenter.HealthService.PerformanceHealthRollup
CategoryCustom
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter.HealthService.SCOMpercentageCPUTimeCounterMonitorType
RemotableFalse
AccessibilityPublic
Alert Message
Operations Manager aracı işlemleri çok fazla işlemci zamanı kullanıyor
Birden çok örnekte tüm aracı işlemlerinin {0} bilgisayarındaki toplam işlemci kullanımı {1} eşiğini aştı.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeMonitor" Accessibility="Public" Enabled="onEssentialMonitoring" Target="SCLibrary!Microsoft.SystemCenter.HealthService" ParentMonitorID="Microsoft.SystemCenter.HealthService.PerformanceHealthRollup" Remotable="false" Priority="Normal" TypeID="Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeCounterMonitorType" ConfirmDelivery="true">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter1>
<AlertParameter2>$Data/Context/SampleValue$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="CPUTimeOverThreshold" MonitorTypeStateID="OverThreshold" HealthState="Error"/>
<OperationalState ID="CPUTimeUnderThreshold" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>321</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
<SyncTime>00:00</SyncTime>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<Threshold>25</Threshold>
<ConsecutiveSampleCountCritical>6</ConsecutiveSampleCountCritical>
<ConsecutiveSampleCountHealthy>3</ConsecutiveSampleCountHealthy>
</Configuration>
</UnitMonitor>