This document can be used to locate high CPU utilization for any Centrify application running in Linux or Unix
In this article we will be walking through the steps to locate what process / thread(s) is consuming a high amount of CPU using the PS command. All commands being used in this article has been tested in Unix and Linux environments. I will use DirectControl (adclient) as a test in the steps to locate the process / thread showing the amount of CPU utilization. (NOTE: These steps can be used to identify any application/process a customer has reported using a large amount of CPU.)
1.) First locate the process ID for the client/agent or application with the command below:
#ps -ef|grep -i adclient
Output:
The process id for DirectControl (adclient) is (20995). (NOTE: The id could be different in other environments)
2.) To see all the processes PID's currently running under DirectControl (adclient) run the following command below:
#ps -Lp 20995 -o pid,ppid,pcpu,pmem,lwp
Output:
We can see that process 21027 (in the example) is consuming high CPU in this demonstration.
NOTE: LWP stands for, "Light weight process"
FYI, To see a single LWP thread consuming high CPU to get the CMD run the command below. (CMD: Shows the command used to launch the process)
#ps -e -q 21027
Output:
3.) To see all LWP related threads consuming high CPU for the process run command below: