Windows Server 2012 Power Consumption Monitor

Microsoft.Windows.PowerManagement.2012.PowerConsumptionMonitor (UnitMonitor)

Monitors the power consumption of Windows Server 2012 computers.

Knowledge Base article:

Summary

This monitor compares the current power consumption of Windows Server 2012 computers to the threshold.

Resolutions

Run the task to lower the power budget or enable the power budget recovery. You can also adjust the threshold used by the monitor.

Element properties:

TargetMicrosoft.Windows.PowerManagement.2012.PowerSupply
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.PowerManagement.2012.PowerConsumptionMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Windows Server 2012 Power Consumption Monitor Alert
The power consumption exceeded the threshold. The current power consumption is {0} Watts.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.PowerManagement.2012.PowerConsumptionMonitor" Accessibility="Public" Enabled="false" Target="Microsoft.Windows.PowerManagement.2012.PowerSupply" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.PowerManagement.2012.PowerConsumptionMonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.PowerManagement.2012.PowerConsumptionMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Value$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ConditionFalse" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
<OperationalState ID="ConditionTrue" MonitorTypeStateID="ConditionTrue" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<UsePercentValue>true</UsePercentValue>
<Threshold>90</Threshold>
<NumSamples>5</NumSamples>
<IntervalSeconds>300</IntervalSeconds>
<TimeoutSeconds>300</TimeoutSeconds>
</Configuration>
</UnitMonitor>