Monitoring des processus : Nombre de handles élevé

Microsoft.Windows.Server.10.0.ProcessHandleCount.Alert (Rule)

Cette règle génère une alerte quand le nombre de handles augmente trop rapidement.

Knowledge Base article:

Résumé

Cette règle génère une alerte quand le nombre de handles augmente trop rapidement.

Remarque : Si le seuil de cette règle diffère du seuil correspondant de la règle « Monitoring des processus : Collecte de l'état d'intégrité », cela peut donner lieu à une incohérence entre les alertes et les états d'intégrité des processus.

Pour éviter la génération excessive d'alertes, un seuil minimal pour la règle a été implémenté. La valeur par défaut pour le seuil minimal est de 15 %. Vous pouvez affecter n'importe quelle valeur au seuil en effectuant des remplacements pour la règle dans la console Operations Manager. Toutefois, si une valeur inférieure à 15 % est définie, le seuil effectif est de 15 % par défaut.

Un utilisateur peut changer le seuil minimal en créant la valeur de Registre DWORD (32 bits) MinimalHandleCountIncreaseThreshold sur l'agent approprié et sous la clé appropriée. Le seuil effectif est égal au maximum des deux valeurs suivantes : le seuil par défaut/remplacé par le biais de la console Operations Manager et le seuil minimal défini dans le Registre.

La clé de Registre suivante est utilisée pour le seuil minimal :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\Modules\Global\BaseOSProcessMonitoring

Element properties:

TargetMicrosoft.Windows.Server.10.0.ProcessMonitoring.ProcessSeed
CategoryCustom
EnabledFalse
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.Server.10.0.Process.HandleCountAlerting.DataSource Microsoft.Windows.Server.10.0.RunAs.CollectionRules
GenerateAlert WriteAction Microsoft.Windows.Server.10.0.GenerateAlertWriteAction Default
WA WriteAction Microsoft.Windows.Server.10.0.CloseAlertWriteAction Default

Source Code:

<Rule ID="Microsoft.Windows.Server.10.0.ProcessHandleCount.Alert" Target="Microsoft.Windows.Server.10.0.ProcessMonitoring.ProcessSeed" Enabled="false" Remotable="true" Priority="Normal" DiscardLevel="100" ConfirmDelivery="false">
<Category>Custom</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.Windows.Server.10.0.Process.HandleCountAlerting.DataSource" RunAs="Microsoft.Windows.Server.10.0.RunAs.CollectionRules">
<MonitoringConfiguration>$Target/Property[Type="WindowsServer!Microsoft.Windows.Server.ProcessSeed"]/ThresholdsByProcess$</MonitoringConfiguration>
<IntervalSeconds>120</IntervalSeconds>
<SampleCount>6</SampleCount>
<HandleCountIncreaseThreshold>20</HandleCountIncreaseThreshold>
<LogLevel>4</LogLevel>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Microsoft.Windows.Server.10.0.GenerateAlertWriteAction">
<AlertMessageId>$MPElement[Name="Microsoft.Windows.Server.10.0.ProcessHandleCount.Alert.AlertMessage"]$</AlertMessageId>
<Threshold>$Data/HandleCountIncreaseThreshold$</Threshold>
<Metric>DoesHandleCountIncreaseTooFast</Metric>
</WriteAction>
<WriteAction ID="WA" TypeID="Microsoft.Windows.Server.10.0.CloseAlertWriteAction" Target="SCDW!Microsoft.SystemCenter.DataWarehouseConnectorServer">
<TimeoutSeconds>300</TimeoutSeconds>
<RuleId>$MPElement[Name="Microsoft.Windows.Server.10.0.ProcessHandleCount.Alert"]$</RuleId>
<Metric>DoesHandleCountIncreaseTooFast</Metric>
</WriteAction>
</WriteActions>
</Rule>