Prahová hodnota počtu popisovačů služby stavu

Microsoft.SystemCenter.Agent.HealthService.HandleCountThreshold (UnitMonitor)

Toto sledování zajišťuje, že počítadlo „Počet popisovačů/procesů“ procesu „HealthService.exe“ nepřekročí nastavenou prahovou hodnotu v řadě po sobě jdoucích vzorků. Pokud jsou podmínky splněny, přejde toto sledování do kritického stavu, které se poté shrne do sledování „Stav služby stavu“. Sledování „Stav služby stavu“ je konfigurováno ke spuštění obnovení, když se nachází v kritickém stavu, kdy se automaticky pokusí o restart služby System Center Management Health.

Knowledge Base article:

Souhrn

Toto monitorování jednotky měří využití Proces\Počet popisovačů pro proces služby stavu. Pokud překročí nakonfigurovanou prahovou hodnotu, pokouší se obnova restartovat službu System Center Management Health, aby zajistila, že nebude dále zahlcovat počítač.

V závislosti na konfiguraci role, kterou má služba System Center Management Health vykonávat, jsou k dispozici různé prahové hodnoty. Následující možnost shrne výchozí prahové hodnoty:

Role služby System Center Management Health

Prahová hodnota počtu popisovačů

Agent

6,000

Server pro správu

10,000

Níže je uvedena konfigurace pro obnovu, která se pokouší restartovat službu System Center Management Health:

Role služby System Center Management Health

Restartovat chování obnovy

Agent

Povoleno

Server pro správu

Zakázáno

Příčiny

Stručné shrnutí potenciálních příčin jsou:

Ze všech sad management pack, pomocí nichž byla nastavena tato služba System Center Management Health, je načteno příliš mnoho pravidel a monitorování.

Nesprávně nakonfigurované pravidlo nebo monitorování, shromažďující nebo zpracovávající příliš mnoho dat (např. pravidlo shromažďování čítače výkonu shromažďující data každou 1 sekundu)

To může být způsobeno tím, že služba System Center Management Health spouští mnoho sad management pack. Každá sada management pack může mít mnoho monitorování, která využívají malé množství zdrojů. S mnoha sadami Management Pack, které přidají mnoho tisíc pravidel a monitorování, může služba System Center Management Health začít spotřebovávat více prostředků.

To lze očekávat u této služby System Center Management Health podle typu monitorování, které služba System Center Management Health provádí.

Další příčinou může být jedno nebo více pravidel a monitorování, která nepoužívají některé osvědčené postupy. Příkladem může být pravidlo čítače výkonu, které se pokouší shromažďovat data o výkonu každou 1 sekundu. Příliš mnoho pravidel a monitorování, která jsou nakonfigurována tímto způsobem, zapříčiní, že služba System Center Management Health a s ní související proces spotřebují více prostředků.

Řešení

Výchozí akcí tohoto monitorování, které běží na agentech, je restart služby System Center Management Health. Není nutná žádná akce uživatele, protože toto obnovení je na agentech povoleno ve výchozím stavu.

Pokud je toto monitorování stále zobrazeno v kritickém stavu, tak služba System Center Management Health možná nebyla správně restartována nebo účet akce, pomocí kterého byl tento agent nakonfigurován, nedisponuje potřebnými oprávněními k provedení restartu této služby.

Pokud se jedná o tento případ, spusťte službu systému Windows System Center Management Health.

Oprava hotfix poskytnutá v článku znalostní báze Knowledge Base 968760 může opravit některé problémy, které způsobily změnu tohoto monitorování na kritický stav. Ujistěte se, že oprava hotfix z  článku znalostní báze Knowledge Base 968760 (http://go.microsoft.com/fwlink/?LinkId=196234) byla nainstalována na všechny počítače, které používají příliš mnoho paměti.

Element properties:

TargetMicrosoft.SystemCenter.HealthService
Parent MonitorMicrosoft.SystemCenter.HealthService.ServiceStateRollup
CategoryPerformanceHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter.Agent.Performance.ConsecutiveSamplesThreshold.MonitorType
RemotableTrue
AccessibilityPublic
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.Agent.HealthService.HandleCountThreshold" Accessibility="Public" Enabled="true" Target="SCLibrary!Microsoft.SystemCenter.HealthService" ParentMonitorID="Microsoft.SystemCenter.HealthService.ServiceStateRollup" Remotable="true" Priority="Normal" TypeID="Microsoft.SystemCenter.Agent.Performance.ConsecutiveSamplesThreshold.MonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<OperationalStates>
<OperationalState ID="HandleCountUnderThreshold" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
<OperationalState ID="HandleCountOverThreshold" MonitorTypeStateID="OverThreshold" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<ObjectName>Process</ObjectName>
<CounterName>Handle Count</CounterName>
<InstanceName>HealthService</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>120</Frequency>
<NumSamples>5</NumSamples>
<Threshold>6000</Threshold>
<Direction>greater</Direction>
</Configuration>
</UnitMonitor>