12

Sometimes apache goes crazy and eats all my memory and swap, but I don't know how to find out which web app is the causing it.

ps gives me this output for the process; "Uninterruptible sleep (usually IO)"

www-data  1526  0.1 78.9 14928852 3191628 ?    D    Oct17   6:45 /usr/sbin/apache2 -k start

I suspect Ruby+Redmine, but I want to be sure

12

Make sure you have mod_status.so loaded within your apache modules then look for/add the above to your httpd.conf:

# Uncomment the following lines to enable mod_status support:
#
ExtendedStatus On

<Location /server-status>
SetHandler server-status

Order Deny,Allow
Deny from all
Allow from YOUR_IP_HERE
</Location>

This will allow you to see all the pages being used load domain within your http server.

To access it use http://your_ip/server-status and only the ip defined at Allow from YOUR_IP_HERE will be able to view it.

2
  • 1
    Also I suggest to use Allow from localhost, so later it is possible to check that info via lynx http://localhost/server-status in console.
    – Andron
    Feb 21 '17 at 12:00
  • In Apache 2.4 it's Require all granted instead of Order ... Feb 11 '20 at 11:11
6

An lsof -p will show you what file handle it is waiting for. Also strace -p and ltrace -p might be handy to try to debug it.

1
  • Both very good answers :)
    – Joernsn
    Oct 25 '10 at 8:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.