İşlem İzleme: Yüksek Bellek Yüzdesi

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

Bu kural, bellek yüzdesi çok yüksek olduğunda bir uyarı oluşturur.

Knowledge Base article:

Özet

Bu kural, belirli bir işlemin bellek tüketimi çok yüksek olduğunda bir uyarı oluşturur.

Not: Bu kuralın eşiği, kendisine karşılık gelen “İşlem İzleme: Durum Toplama” kuralının eşiğinden farklıysa bu durum, uyarılar ve işlem durumları arasında tutarsızlığa sebep olabilir.

Gereksiz uyarılar oluşturulmasının önüne geçmek adına kural için minimal bir eşik uygulanmıştır. Minimal eşiğin varsayılan değeri %7’dir. Eşik, Operations Manager konsolundaki geçersiz kılmalar aracılığıyla herhangi bir değere ayarlanabilir ancak %7’den düşük bir değer seçilirse, geçerli eşik varsayılan olarak %7 olacaktır.

Bir kullanıcı, uygun aracıda ve uygun anahtar ile MinimalMemoryPercentageThreshold kayıt defteri DWORD (32 bit) değeri oluşturarak en düşük eşiği değiştirebilir. Geçerli eşik, iki değerden yüksek olanına eşit olacaktır: Operations Manager konsolunda Varsayılan/geçersiz kılınan eşik ve kayıt defterinde ayarlanan minimal eşik.

Minimal eşik için aşağıdaki kayıt defteri anahtarı kullanılır:

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>