Monitorování všech procesů agenta za účelem zjištění možných potíží s agentem, který využívá příliš mnoho času procesoru.
Toto monitorování vypočítá celkové využití výkonu procesoru agenta nástroje Operations Manager a jeho souvisejících procesů a poté generuje výstrahu v případě, kdy využití výkonu procesoru pro zadaný počet po sobě jdoucích vzorků překročí specifikovanou prahovou hodnotu.
Toto monitorování podporuje práci skriptu tím, že lokalizuje a vzorkuje využití výkonu procesoru procesu agenta nástroje Operations Manager (HealthService.exe), jeho dceřiný proces monitorování hostitele (MonitoringHost.exe) a dceřiné procesy těchto procesů monitorování hostitele (cscript.exe, PowerShell.exe apod.). Skript spustí celkem třikrát výpočet a průměr těchto tří po sobě jdoucích vzorků, pak toto monitorování použije pro určení, zda se jedná o stav kritický nebo stav v pořádku.
Chcete-li, můžete přizpůsobit a přepsat nastavení následujících parametrů a změnit tak výchozí chování tohoto monitorování:
Frekvence (v sekundách) Jedná se o četnost, se kterou se monitorují vzorky využití procesoru agenta. Ve výchozím nastavení monitorování vyhodnocuje využití procesoru agenta každých 300 sekund (5 minut).
Počet po sobě jdoucích vzorků v případě kritického stavu. Ve výchozím nastavení toto monitorování hlásí kritický stav, když specifikovanou prahovou hodnotu překročí 6 po sobě jdoucích vzorků.
Počet po sobě jdoucích vzorků v případě stavu v pořádku. Ve výchozím nastavení toto monitorování hlásí stav v pořádku, když specifikovanou prahovou hodnotu nepřekročí 3 po sobě jdoucí vzorky.
Prahová hodnota: Ve výchozím nastavení prahová hodnota pro využití výkonu procesoru činí 25 %.
Toto monitorování je ve výchozím nastavení neaktivní pro všechny servery pro správu.
Nadměrné využití výkonu procesoru u různých procesů agenta v nástroji Operations Manager může signalizovat, že agent nebo jedna z jeho základních závislostí nefunguje řádně. Jestliže agent a jeho základní závislosti jsou pravidelně aktualizovány, agent u monitorovaného systému je nadměrně využíván. To může mít krátkodobé trvání, pokud je příčinou nejnovější aktualizace ve skupině pro správu, jako např. nasazení nové sady management pack, nebo se může jednat o důsledek skutečnosti, že agent je opravdu blízko nadměrnému zatížení – v tom případě může být zapotřebí ladění.
Pro ujištění, že agent a jeho základní závislosti fungují řádně, zkontrolujte následující:
Ověřte, zda je v systému nainstalována nejnovější verze agenta nástroje Operations Manager.
Zkontrolujte, zde je nainstalovaná aktualizace pro MSXML 6.0, která je k dispozici v článku znalostní báze Knowledge Base article 968967 (http://go.microsoft.com/fwlink/?LinkId=181885).
Jestliže je operačním systémem Windows XP, Windows 2000 Server nebo Windows Server 2003, zkontrolujte, zda je v systému spuštěn Windows Script Host 5.7 nebo novější. Windows Script Host 5.7 si můžete stáhnout z webových stránek http://go.microsoft.com/fwlink/?LinkId=181884.
Jestliže problém i po zkontrolování nastavení trvá, je pro pochopení toho, co se za využitím výkonu procesoru skrývá, potřebný hlubší rozbor. Pátrejte dál, přičemž můžete využit libovolnou kombinaci následujících kroků:
Zkontrolovat nejnovější historii využití procesoru agenta, čítače pracovních postupů (workflow) a čítačů modulu za použití následujícího náhledu: Zobrazení Výkon agenta Údaje o využití procesoru agenta vám napoví, zda se jedná o problém z poslední doby, nebo problém, který se projevuje již delší období. Údaje z čítače pracovních postupů a čítačů modulu vám pak poskytnou bližší informace o průběhu činností, které jsou po agentovi požadovány v důsledku různých pravidel, monitorování a nálezů. Tyto údaje pak lze též porovnat s jinými agenty, které jsou v pořádku.
Pro pochopení různých typů položek, které jste v agentovi nalezli, můžete jako nástroj využít např. Effective Configuration Viewer (Účinný prohlížeč nastavení) (http://go.microsoft.com/fwlink/?LinkId=182300). Více typů položek může vést k vyššímu počtu údajů z čítače pracovních postupů a čítačů modulu, což následně může vést k vyššímu pracovnímu zatížení.
Nástrojem Sledování výkonu shromážděte podrobnější měření % času procesoru z objektu Proces. To vám poskytne bližší informace o tom, které procesy nejvýznamněji přispívají k celkovému využití procesoru.
Zkontrolujte všechny poslední aktualizace sad management pack nebo změny, abyste viděli, zda tyto nekorespondují s nárůstem využití výkonu procesoru.
Jakmile se vám podaří příčinu nebo příčiny identifikovat, pro odstranění problému můžete použít jakýkoli z následujících kroků:
Jestliže změna sady management pack byla provedena v poslední době nebo byl nainstalován nový pack, monitorujte situaci, abyste viděli, zda problém trvá.
Snižte četnost nálezů pomocí přepisování a snažte se tak využití výkonu procesoru rozložit na celý den. Díky tomuto kompromisnímu řešení bude nálezům trvat potenciálně delší dobu, než se projeví.
Snižte četnost naplánovaných pravidel nebo monitorování, abyste využití výkonu procesoru rozložili na celý den. Díky tomuto kompromisnímu řešení dojde ke zlepšení monitorování.
Jestliže je agent spravován několika skupinami pro správu (konfigurace nazývaná „s více adresami“), budou tyto rovněž přispívat k vyššímu využití procesoru. Zvažte snížení počtu skupin pro správu, kterými je agent spravován.
Jestliže výše uvedené kroky nevedou k řešení, obraťte se na zákaznický servis a podporu společnosti Microsoft (http://support.microsoft.com/).
K tomuto monitorování je přidružený diagnostický úkol „Shromažďování diagnostických informací o využití procesoru agenta“, který opakovaně vzorkuje využití výkonu procesoru. Ve výchozím nastavení je tento diagnostický úkol neaktivní.
Je zde i úkol na konzole Operations Console, a to „Zjištění využití procesoru agenta“, který opakovaně vzorkuje využití výkonu procesoru. Po spuštění úkolu „Zjištění využití procesoru agenta“ můžete nastavit parametry časové prodlevy a počtu vzorků. Výstupem z úkolu je tabulka s výsledky. Spuštění úkolu „Zjištění využití procesoru agenta“
Target | Microsoft.SystemCenter.HealthService | ||
Parent Monitor | Microsoft.SystemCenter.HealthService.PerformanceHealthRollup | ||
Category | Custom | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SystemCenter.HealthService.SCOMpercentageCPUTimeCounterMonitorType | ||
Remotable | False | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<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>