Monitoring des processus : Pourcentage de mémoire élevé

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

Cette règle génère une alerte quand le pourcentage de mémoire est trop élevé.

Knowledge Base article:

Résumé

Cette règle génère une alerte quand la consommation de la mémoire par un processus spécifique est trop élevée.

Remarque : Notez que 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 7 %. 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 à 7 % est définie, le seuil effectif sera de 7 % par défaut.

Un utilisateur peut changer le seuil minimal en créant la valeur de Registre DWORD (32 bits) MinimalMemoryPercentageThreshold 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.MemoryPercentageAlerting.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.ProcessMemoryPercentage.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.MemoryPercentageAlerting.DataSource" RunAs="Microsoft.Windows.Server.10.0.RunAs.CollectionRules">
<MonitoringConfiguration>$Target/Property[Type="WindowsServer!Microsoft.Windows.Server.ProcessSeed"]/ThresholdsByProcess$</MonitoringConfiguration>
<IntervalSeconds>67</IntervalSeconds>
<SampleCount>6</SampleCount>
<MemoryPercentageThreshold>50</MemoryPercentageThreshold>
<LogLevel>4</LogLevel>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Microsoft.Windows.Server.10.0.GenerateAlertWriteAction">
<AlertMessageId>$MPElement[Name="Microsoft.Windows.Server.10.0.ProcessMemoryPercentage.Alert.AlertMessage"]$</AlertMessageId>
<Threshold>$Data/MemoryPercentageThreshold$</Threshold>
<Metric>IsMemoryPercentageTooHigh</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.ProcessMemoryPercentage.Alert"]$</RuleId>
<Metric>IsMemoryPercentageTooHigh</Metric>
</WriteAction>
</WriteActions>
</Rule>