We have a server with 4 CPUs, the CPU Monitoring of the server always shows 100% even though it's not.

Document ID : KB000025901
Last Modified Date : 14/02/2018
Show Technical Document Details

Issue: 

We have a server with 4 CPUs, the CPU Monitoring of the server always shows 100% even though it's not.

Environment:  

Linux/UNIX

Cause: 

On UNIX, the CPU calculations are based on load averaging as displayed by the command top. You can scale the results the agent returns with the objmon.cpu.scalefactor parameter.

Resolution:

Add the following parameter in agent's agentparm.txt file and recycle the agent for the change to be effected:
objmon.cpu.scalefactor=25

As per the documentation;

objmon.cpu.scalefactor

Specifies a scale factor to multiply the load averages of a CPU. When processing a CPU Monitoring job, this parameter lets the agent express the load average as a percentage. This scale factor is for busy computers that would otherwise always report 100 percent use.

Default: 100

Example: If you set the scale factor to 10 and the reported load average is 7, then the reported CPU usage would be 70 percent.

To determine CPU usage, the agent makes a call to native functions or programs (depending on the platform). The agent might call one or a combination of the following:

  • getloadavg
  • pstat_getdynamic
  • uptime
  • PdhCollectQueryData

Additional Information:

CA WA Agent for UNIX, Linux, Windows, or i5/OS Agent Parameters Used for Troubleshooting