Seuil du nombre de handles de l'hôte d'analyse

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

Cette analyse garantit que le compteur Processus\Nombre de handles du processus MonitoringHost.exe ne dépasse pas un seuil défini sur une série d'échantillons consécutifs. Si les conditions sont réunies, cette analyse passe à un état critique, qui se propagera ensuite à l'analyse « État du service de contrôle d'intégrité ». L'analyse « État du service de contrôle d'intégrité » est configurée pour exécuter une récupération lorsque son état est critique, et tentera automatiquement de redémarrer le service de contrôle d'intégrité de l'administration System Center.

Knowledge Base article:

Résumé

Cette règle mesure l'utilisation du Processus\Nombre de handles de toutes les instances du processus hôte d'analyse (MonitoringHost.exe). Si le seuil configuré est dépassé, une réponse tente de redémarrer le service de contrôle d'intégrité de l'administration System Center pour qu'il cesse de surcharger l'ordinateur.

Il existe des seuils différents en fonction du rôle que le service de contrôle d'intégrité de l'administration System Center doit exécuter. Les seuils par défaut sont récapitulés ci-dessous :

Rôle du service de contrôle d'intégrité de l'administration System Center

Seuil du nombre de handles

Agent

6,000

Serveur d'administration

10,000

La configuration de la réponse qui tente de redémarrer le service de contrôle d'intégrité de l'administration System Center est indiquée ci-dessous :

Rôle du service de contrôle d'intégrité de l'administration System Center

Comportement de la réponse de redémarrage

Agent

Activé

Serveur d'administration

Aucune réponse de redémarrage

Causes

Voici un résumé des causes potentielles :

Le nombre de règles et d'analyses chargées à partir de tous les packs d'administration configurés sur ce service de contrôle d'intégrité de l'administration System Center est trop important.

Une règle ou une analyse mal configurée collecte ou traite un nombre trop important de données (par ex., la règle de collecte du compteur de performances collecte des données toutes les secondes).

Cette situation peut être due au fait que de nombreux packs d'administration sont exécutés par le service de contrôle d'intégrité de l'administration System Center. Chaque pack d'administration peut effectuer une multitude d'analyses qui utilisent peu de ressources. Lorsque les packs d'administration s'ajoutent en grand nombre à plusieurs milliers de règles et d'analyses, chaque instance d'hôte d'analyse (MonitoringHost.exe) peut consommer davantage de ressources.

C'est peut-être le cas de ce service de contrôle d'intégrité de l'administration System Center, en fonction du type d'analyse effectué par celui-ci.

Une autre cause possible : une ou plusieurs règles et analyses ne sont pas conformes à des pratiques recommandées. Par exemple, lorsqu'une règle de compteur de performances tente de collecter des données de performances toutes les secondes. Si un nombre excessif de règles et d'analyses sont configurées de cette façon, le processus MonitoringHost.exe consommera plus de ressources.

Solutions

L'action par défaut pour cette règle qui s'exécute sur les agents est le redémarrage du service de contrôle d'intégrité de l'administration System Center. Cette récupération étant activée par défaut sur les agents, aucune action utilisateur n'est nécessaire.

Remarque : il se peut que le service de contrôle d'intégrité de l'administration System Center ne redémarre pas correctement si le compte d'action configuré sur cet agent ne dispose pas des droits suffisants pour redémarrer le service.

Le cas échéant, démarrez le service Windows de contrôle d'intégrité de l'administration System Center.

Si vous estimez que l'utilisation des ressources est appropriée pour le nombre d'analyses effectuées par cet agent, vous pouvez remplacer le seuil ou désactiver la règle.

Element properties:

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

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.Agent.MonitoringHost.HandleCountThreshold" Accessibility="Public" Enabled="true" Target="SCLibrary!Microsoft.SystemCenter.Agent" ParentMonitorID="Microsoft.SystemCenter.HealthService.ServiceStateRollup" Remotable="false" Priority="High" 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>MonitoringHost*</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>120</Frequency>
<NumSamples>5</NumSamples>
<Threshold>6000</Threshold>
<Direction>greater</Direction>
</Configuration>
</UnitMonitor>