Esta regra gera um alerta quando a porcentagem de memória está alta demais.
Esta regra gera um alerta quando o consumo de memória por um processo específico for alto demais.
Observação: Observe que, se o limite para esta regra difere do limite correspondente para a regra “Monitoramento de processoMonitoramento de Processos: Coleta do Estado de Integridade”, isso pode gerar inconsistência entre os alertas e os estados de integridade do processo.
Para evitar a geração de alertas em excesso, foi implementado um limite mínimo para a regra. O valor padrão para o limite mínimo é 7%. O limite pode ser alterado para qualquer valor por meio de substituições da regra no console do Gerenciador de Operações, mas, se isto for alterado para um valor inferior a 7%, o limite efetivo será de 7% por padrão.
Um usuário pode alterar o limite mínimo criando um registro MinimalMemoryPercentageThreshold DWORD (32 bits) no agente apropriado e com a chave apropriada. O limite efetivo será igual ao máximo de dois valores: o limite padrão/sibstituído por meio do console do Gerenciador de Operações e o conjunto limite mínimo no registro.
A seguinte chave de registro é usada para o limite mínimo:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\Modules\Global\BaseOSProcessMonitoring
Target | Microsoft.Windows.Server.10.0.ProcessMonitoring.ProcessSeed |
Category | Custom |
Enabled | False |
Alert Generate | False |
Remotable | True |
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 |
<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>