DHCP Performance Health Monitor

Microsoft.Windows.DHCPServer.Library.Server.UnitMonitor.PerformanceHealth (UnitMonitor)

Knowledge Base article:

Summary

Microsoft Windows Server DHCP Library Performance Health monitor that compares Requests to (Offers + Nacks) and alerts if amount exceeds the threshold parameter.

These are the parameters that we could override, if need it:

Element properties:

TargetMicrosoft.Windows.DHCPServer.Library.Server
Parent MonitorSystem.Health.PerformanceState
CategoryStateCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.DHCPServer.Library.MonitorType.PerformanceHealth
RemotableTrue
AccessibilityPublic
Alert Message
DHCP ACKs and NACKs Alert
Server {0}'s DHCP ACKs and NACKs monitor has exceeded the threshold percentage of {1}
RunAsMicrosoft.Windows.DHCPServer.Library.ActionAccount

Source Code:

<UnitMonitor ID="Microsoft.Windows.DHCPServer.Library.Server.UnitMonitor.PerformanceHealth" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.DHCPServer.Library.Server" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" RunAs="Microsoft.Windows.DHCPServer.Library.ActionAccount" TypeID="Microsoft.Windows.DHCPServer.Library.MonitorType.PerformanceHealth" ConfirmDelivery="false">
<Category>StateCollection</Category>
<AlertSettings AlertMessage="Microsoft.Windows.DHCPServer.Library.Server.UnitMonitor.PerformanceHealth_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="Microsoft.Windows.DHCPServer.Library.Server"]/Name$</AlertParameter1>
<AlertParameter2>$Data/Context/Property[@Name='ThresholdPercentage']$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="PerformanceHealthOk" MonitorTypeStateID="PerformanceHealthOk" HealthState="Success"/>
<OperationalState ID="PerformanceHealthError" MonitorTypeStateID="PerformanceHealthError" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>120</TimeoutSeconds>
<TargetComputer>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</TargetComputer>
<ThresholdPercentage>2</ThresholdPercentage>
<DebugFlag>false</DebugFlag>
</Configuration>
</UnitMonitor>