Dieser Monitor überprüft die WMI-Speicherauslastung auf dem Computer.
Vom WMI-Dienst auf diesem Computer wird zu viel Arbeitsspeicher verwendet.
Von diesem Monitor wird in regelmäßigen Abständen die Gesamtspeicherauslastung von WMI-Prozessen auf dem Computer überprüft. Dazu wird der Indikator "Private Bytes" für alle mit WmiPrv beginnende Prozessinstanzen überprüft und mit zwei Schwellenwerten verglichen. Der Monitor wird standardmäßig in den Warnungsstatus versetzt, wenn durch WMI-bedingte Prozesse mehr als 500MB Speicher genutzt wird. Wenn die Speicherauslastung durch WMI-bedingte Prozesse 600MB überschreitet, wird der Monitor in den Fehlerstatus versetzt.
Das kann möglicherweise durch einen WMI-Speicherverlust verursacht werden, wodurch der Speicherbedarf von WMI mit der Zeit immer weiter ansteigt.
Bei einer erkennbaren Systematik der WMI-Speicherprobleme wird die deaktivierte Wiederherstellung des Monitors beim Überschreiten der Warnungs- oder Fehlerschwellenwerte automatisch einen Neustart von WMI auslösen Wenn das Problem damit behoben wird, können Sie eine dieser Wiederherstellungen aktivieren.
Weitere Informationen zur Problembehandlung bei WMI-Fehlern finden Sie unter http://go.microsoft.com/fwlink/?LinkId=158224.
Sie können auch unter http://go.microsoft.com/fwlink/?LinkId=158226 das Diagnoseprogramm für WMI herunterladen. Das Diagnoseprogramm für WMI ist ein VBScript-Skript, mit dem sich mögliche Fehler des WMI-Diensts auf einem Computer leichter beheben lassen.
Target | Microsoft.SystemCenter.Agent | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SystemCenter.Performance.FilteredDoubleThreshold.MonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SystemCenter.WMIPrivateBytes.Monitor" Accessibility="Public" Enabled="false" Target="SCLibrary!Microsoft.SystemCenter.Agent" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SystemCenter.Performance.FilteredDoubleThreshold.MonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.WMIPrivateBytes.Monitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/InstanceName$</AlertParameter1>
<AlertParameter2>$Data/Context/ObjectName$</AlertParameter2>
<AlertParameter3>$Data/Context/CounterName$</AlertParameter3>
<AlertParameter4>$Data/Context/Value$</AlertParameter4>
<AlertParameter5>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter5>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnderThreshold1" MonitorTypeStateID="UnderThreshold1" HealthState="Success"/>
<OperationalState ID="OverThreshold1UnderThreshold2" MonitorTypeStateID="OverThreshold1UnderThreshold2" HealthState="Warning"/>
<OperationalState ID="OverThreshold2" MonitorTypeStateID="OverThreshold2" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Private Bytes</CounterName>
<ObjectName>Process</ObjectName>
<InstanceName/>
<AllInstances>true</AllInstances>
<Frequency>300</Frequency>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">InstanceName</XPathQuery>
</ValueExpression>
<Operator>ContainsSubstring</Operator>
<Pattern>WmiPrv</Pattern>
</RegExExpression>
</Expression>
<Threshold1>524288000</Threshold1>
<Threshold2>629145600</Threshold2>
</Configuration>
</UnitMonitor>