Redémarre le service de contrôle d'intégrité lorsque le processus MonitoringHost.exe dépasse le seuil Processus\Nombre de handles.
Cette règle mesure l'utilisation du Processus\Nombre de handles de toutes les instances du processus MonitoringHost.exe. En cas de dépassement du seuil de configuration, une alerte est générée.
Il existe trois seuils différents en fonction de la configuration du rôle du service de contrôle d'intégrité. Les seuils par défaut sont récapitulés ci-dessous :
Rôle du service de contrôle d'intégrité | Seuildu nombre de handles |
Agent | 2,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é est indiquée ci-dessous :
Rôle du service de contrôle d'intégrité | Comportement de la réponse de redémarrage |
Agent | Activé |
Serveur d'administration | Aucune réponse de redémarrage |
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é 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é. 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, il se peut que chaque instance MonitoringHost.exe consomme davantage de ressources.
C'est peut-être le cas de ce service de contrôle d'intégrité, en fonction du type d'analyse effectuée par le service de contrôle d'intégrité.
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.
L'action par défaut pour cette règle qui s'exécute sur les serveurs d'administration est la génération d'une alerte.
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écupération.
Si le service de contrôle d'intégrité et son processus MonitoringHost.exe associé continuent de consommer un trop grand nombre de ressources, vous pouvez redémarrer le service de contrôle d'intégrité de Windows pour réduire les risques liés à ce problème.
Target | Microsoft.SystemCenter.ManagementServer | ||
Category | Maintenance | ||
Enabled | False | ||
Instance Name | Process | ||
Counter Name | Handle Count | ||
Frequency | 120 | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
|
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DataSource | DataSource | System.Performance.DataProvider | Default |
CDAveragerThreshold | ConditionDetection | System.Performance.AverageThresholdCondition | Default |
Alert | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SystemCenter.ManagementServer.MonitoringHost.HandleCountThreshold" Enabled="false" Target="SCLibrary!Microsoft.SystemCenter.ManagementServer" ConfirmDelivery="false" Remotable="true" Priority="High" DiscardLevel="100">
<Category>Maintenance</Category>
<DataSources>
<DataSource ID="DataSource" TypeID="Performance!System.Performance.DataProvider">
<CounterName>Handle Count</CounterName>
<ObjectName>Process</ObjectName>
<InstanceName>MonitoringHost*</InstanceName>
<Frequency>120</Frequency>
</DataSource>
</DataSources>
<ConditionDetection ID="CDAveragerThreshold" TypeID="Performance!System.Performance.AverageThresholdCondition">
<NumSamples>5</NumSamples>
<Threshold>10000</Threshold>
<Operator>Greater</Operator>
</ConditionDetection>
<WriteActions>
<WriteAction ID="Alert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertName/>
<AlertDescription/>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.SystemCenter.ManagementServer.MonitoringHost.HandleCountThreshold.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/InstanceName$</AlertParameter1>
<AlertParameter2>$Data/Value$</AlertParameter2>
</AlertParameters>
<Suppression>
<SuppressionValue>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>