Hi
We are running Apache 2.2 and have setup PHP-CGI to serve PHP files. Today, we observed that a php-cgi process has been running for a very long time and is consuming 100% CPU. The parent apache process of this php-cgi has been running since July 26th. We do a graceful restart of the server every hour to pick up new virtual host connections but apparently, this process has not been reaped till now.
Is there a way to figure out what request this apache process is serving?
I have tried looking up on Google and found apachetop but that doesn't give us the required information.
I have also tried to locate the file being executed with 'lsof -p <pid of apache and php-cgi prcoess>' but that listed mostly the dynamic libraries. The peculiar entries in the php-cgi case were:
php-cgi 16665 swarLD21606 0r FIFO 0,6 2605128 pipe
php-cgi 16665 swarLD21606 1w FIFO 0,6 2605129 pipe
php-cgi 16665 swarLD21606 2w FIFO 0,6 2605130 pipe
php-cgi 16665 swarLD21606 3u sock 0,5 2605937 can't identify protocol
and in the case of httpd was:
httpd 16414 apache 558u sock 0,5 2605127 can't identify protocol
which we haven't been able to explain.
Any suggestions to investigate will also be very helpful.
Thanks and regards
Chandranshu