Ügynök processzorhasználata

Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeMonitor (UnitMonitor)

Figyel minden ügynökfolyamatot a túl sok processzoridőt használó ügynökökkel kapcsolatos lehetséges problémák azonosítása érdekében.

Knowledge Base article:

Összegzés

Ez a figyelő az Operations Manager ügynökének és kapcsolódó folyamatainak teljes CPU-felhasználását számítja ki, és riasztást állít elő, ha az egymást követő minták megadott számánál a CPU-felhasználás meghaladja a megadott küszöbértéket.

A figyelőhöz tartozó parancsfájl megkeresi és mintavételezi a CPU-felhasználást az Operations Manager ügynökének folyamatánál (HealthService.exe), alárendelt figyelő gazdagépének folyamatánál (MonitoringHost.exe) és a figyelő gazdagép folyamatainak alárendelt folyamatainál (cscript.exe, PowerShell.exe stb.). A parancsfájl háromszor hajtja végre a számítást, és a három egymást követő minta átlagát adja eredményül, amely alapján a figyelő meghatározza a kritikus vagy a megfelelő állapotot.

Konfiguráció

A figyelő alapértelmezés szerinti működésének módosításához felülbírálások használatával testre szabhatja a következő paramétereket:

Ez a figyelő alapértelmezés szerint le van tiltva az összes felügyeleti kiszolgálónál.

Okok

Az Operations Manager különféle ügynökfolyamatainak túlzott CPU-felhasználása azt jelenheti, hogy az ügynök vagy valamelyik hozzá tartozó függőség nem megfelelően működik. Ha az ügynök és a hozzá tartozó függőségek megfelelően vannak frissítve, akkor az ügynök túlterhelt a figyelt rendszeren. Ez lehet rövid életű, amelyet a legutóbbi frissítés, például egy új felügyeleti csomag telepítése, okoz a felügyeleti csoportban, de ennek oka lehet az is, hogy az ügynöknél valóban túl nagy a terhelés, és ebben az esetben finomhangolás válhat szükségessé.

Megoldások

Az ügynök és a hozzá tartozó függőségek megfelelő működésének biztosításához a következő lépések használhatók:

Ha a fenti konfigurációs ellenőrzések után továbbra is fennáll az állapot, mélyebb vizsgálatra van szükség a CPU-felhasználást befolyásoló tényezők megértéséhez. Folytassa a vizsgálódást a következő lépések tetszőleges kombinációjának végrehajtásával:

Az ok vagy okok behatárolása után a következő lépések valamelyikét használhatja a probléma megoldásához:

Ha a fenti lépések egyike sem oldja meg a problémát, forduljon a Microsoft ügyfél- és támogatási szolgálatához (http://support.microsoft.com/).

További tudnivalók

Ez a figyelő tartalmazza az „Ügynök processzorfelhasználása diagnosztikai adatainak gyűjtése” kapcsolódó diagnosztikai feladatot, amely újrafuttatja a CPU-felhasználás mintavételezését. Alapértelmezés szerint ez a diagnosztikai feladat le van tiltva.

Az operatív konzolon megtalálható az „Ügynök processzorfelhasználásának beolvasása” feladat is, amely újrafuttatja a CPU-felhasználás mintavételezését. Az „Ügynök processzorfelhasználásának beolvasása” feladat futtatásakor beállíthatja az időkorlát és a minták száma paramétert. A feladat az eredmények táblázatát adja vissza. Az „Ügynök processzorfelhasználásának beolvasása” feladat futtatása

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
Az Operations Manager ügynökfolyamatai túl sok processzoridőt igényelnek
A(z) {0} számítógépen az összes ügynökfolyamat teljes processzorhasználata túllépte a több mintához megadott {1} küszöbértéket.
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>