Ta reguła generuje alert, gdy wartość procentowa czasu procesora jest zbyt duża.
Ta reguła generuje alert, gdy użycie czasu procesora przez określony proces jest zbyt duże.
Uwaga: Jeśli próg dla tej reguły różni się od odpowiadającego mu progu dla reguły „Monitorowanie procesów: Zbieranie danych o stanie kondycji”, może to doprowadzić do niespójności między alertami i stanami kondycji procesów.
Aby uniknąć generowania niepotrzebnych alertów, zaimplementowano minimalny próg dla reguły. Domyślna wartość minimalnego progu wynosi 7%. Próg można zmienić na dowolną wartość za pośrednictwem przesłonięć dla reguły w konsoli programu Operations Manager, ale jeśli zostanie on zmieniony na wartość mniejszą niż 7%, obowiązującym progiem domyślnie będzie 7%.
Użytkownik może zmienić minimalny próg, tworząc wartość rejestru DWORD (32-bitową) MinimalPercentProcessorTimeThreshold za pomocą odpowiedniego agenta i pod odpowiednim kluczem. Obowiązujący próg będzie równy maksymalnie dwóm wartościom: progowi domyślnemu/zastąpionemu w konsoli programu Operations Manager i progowi minimalnemu ustawionemu w rejestrze.
Do ustawienia progu minimalnego służy następujący klucz rejestru:
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.PercentProcessorTimeAlerting.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.ProcessPercentProcessorTime.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.PercentProcessorTimeAlerting.DataSource" RunAs="Microsoft.Windows.Server.10.0.RunAs.CollectionRules">
<MonitoringConfiguration>$Target/Property[Type="WindowsServer!Microsoft.Windows.Server.ProcessSeed"]/ThresholdsByProcess$</MonitoringConfiguration>
<IntervalSeconds>73</IntervalSeconds>
<SampleCount>6</SampleCount>
<PercentProcessorTimeThreshold>50</PercentProcessorTimeThreshold>
<LogLevel>4</LogLevel>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Microsoft.Windows.Server.10.0.GenerateAlertWriteAction">
<AlertMessageId>$MPElement[Name="Microsoft.Windows.Server.10.0.ProcessPercentProcessorTime.Alert.AlertMessage"]$</AlertMessageId>
<Threshold>$Data/PercentProcessorTimeThreshold$</Threshold>
<Metric>IsPercentProcessorTimeTooHigh</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.ProcessPercentProcessorTime.Alert"]$</RuleId>
<Metric>IsPercentProcessorTimeTooHigh</Metric>
</WriteAction>
</WriteActions>
</Rule>