PRO CPU Utilization

ProHostVSCPUUnitMonitor (UnitMonitor)

Threshold monitor for \%Processor Time on Virtual Server hosts

Knowledge Base article:

Summary

This monitor tracks the CPU performance of the host. The CPU usage has exceeded the threshold.

Causes

The virtual machines running on the host are consuming critical levels of the CPU resources on the host.

Resolutions

To free up CPU resources, migrate a virtual machine to another host. To have Virtual Machine Manager migrate a virtual machine, click Implement. If you choose to let VMM automatically migrate your virtual machine, VMM will use Intelligent Placement to determine the best destination for the virtual machine in the cluster. For information about automating Performance and Resource Optimization (PRO), see Virtual Machine Manager 2008 R2 Help.

Element properties:

TargetMicrosoft.SystemCenter.VirtualMachineManager.Pro.2008.ManagedHost.VirtualServer
Parent MonitorSystem.Health.PerformanceState
CategoryCustom
EnabledFalse
Instance NameProcessor
Counter Name\% Processor Time
Frequency60
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeSystem.Performance.ConsecutiveSamplesThreshold
RemotableTrue
AccessibilityPublic
Alert Message
PRO CPU Utilization
CPU utilization on the host has reached critical levels. A \%Processor Time monitor has detected that the CPU utilization is greater than the threshold. (The current threshold is {0} percent.)
RunAsDefault

Source Code:

<UnitMonitor ID="ProHostVSCPUUnitMonitor" Accessibility="Public" Enabled="false" Target="VMMProLibrary!Microsoft.SystemCenter.VirtualMachineManager.Pro.2008.ManagedHost.VirtualServer" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Performance!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="ProHostCPUUnitMonitor_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="VMMProLibrary!Microsoft.SystemCenter.VirtualMachineManager.Pro.2008.ManagedHost"]/CPUThreshold$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ProHostCPUUnitMonitor_StateSuccess" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
<OperationalState ID="ProHostCPUUnitMonitor_StateError" MonitorTypeStateID="ConditionTrue" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>% Processor Time</CounterName>
<ObjectName>Processor</ObjectName>
<InstanceName/>
<AllInstances>true</AllInstances>
<Frequency>60</Frequency>
<Threshold>$Target/Property[Type="VMMProLibrary!Microsoft.SystemCenter.VirtualMachineManager.Pro.2008.ManagedHost"]/CPUThreshold$</Threshold>
<Direction>greater</Direction>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>