CPU 5 Minutes LoadAverage

ozsoft.sap.Monitor.AppServer.CPU.5minLoadAverage (UnitMonitor)

Average number of processes in a host system that are ready for execution but must wait to be processed by the CPU

Knowledge Base article:

Summary

Average number of processes in a host system that are ready for execution but must wait to be processed by the CPU

Configuration

The actual threshold value largely depnends on the system architecture. The best practice indicates that 5 minute Load Average above 7 is problematic. However in some applications, you might consider even the lower value as the threshold to generate the alert.

Causes

There are many reasons for the CPU Load to spike. Please use standard SAP Tools like SM50 etc to find the root cause of the problem

Resolutions

The resolution will depend on the cause, some of the actions may include changing the load-balancing parameters of the Message Server, switching Operation Mode or provisioning additional application server

Additional

N/A

External

Please refer to SAP Documentations and Notes

Element properties:

Targetozsoft.sap.AppServer
Parent MonitorSystem.Health.PerformanceState
CategoryOperations
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor Typeozsoft.sap.CCMSMetricMonitorType2
RemotableTrue
AccessibilityPublic
Alert Message
App Server CPU 5 Minutes LoadAverage
{0} : {1} has a value {2}
RunAsDefault

Source Code:

<UnitMonitor ID="ozsoft.sap.Monitor.AppServer.CPU.5minLoadAverage" Accessibility="Public" Enabled="true" Target="ozsoft.sap.AppServer" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="ozsoft.sap.CCMSMetricMonitorType2" ConfirmDelivery="false">
<Category>Operations</Category>
<AlertSettings AlertMessage="ozsoft.sap.Monitor.AppServer.CPU.5minLoadAverage.AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/ObjectName$</AlertParameter1>
<AlertParameter2>$Data/Context/CounterName$</AlertParameter2>
<AlertParameter3>$Data/Context/Value$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Under" MonitorTypeStateID="SDKMetricUnderLowThreshold" HealthState="Success"/>
<OperationalState ID="Between" MonitorTypeStateID="SDKMetricUnderHighOverLowThreshold" HealthState="Warning"/>
<OperationalState ID="Over" MonitorTypeStateID="SDKMetricOverHighThreshold" HealthState="Error"/>
</OperationalStates>
<Configuration>
<CounterName>5minLoadAverage</CounterName>
<ObjectName>CPU</ObjectName>
<Frequency>60</Frequency>
<HighThreshold>9</HighThreshold>
<LowThreshold>7</LowThreshold>
</Configuration>
</UnitMonitor>