Apache High CPU Usage Enable Mod_Status Guide Solution - Find Cause of High CPU Usage Script/Domain

mod_status is a great way to track down the source of high CPU usage and to find what vhost/script is the cause of it.

It gives you a live view of bandwith usage, CPU usage, and memory usage broken down by domain/vhost and script/URI.

Enable mod_status

vi /etc/httpd/conf/httpd.conf

ExtendedStatus On


SetHandler server-status

Order Deny,Allow
Deny from all
Allow from 127.0.0.1

Add your IP after 127.0.0.1. Ibelieve you could also require an htaccess pasword if you want.

After that reload Apache and browse to your webserver to http://yourhost.com/server-status and you'll see something like below:


Apache Server Status for localhost

Server Version: Apache/2.2.3 (CentOS)
Server Built: Aug 30 2010 12:32:08

Current Time: Saturday, 30-Apr-2011 15:55:46 PDT

Restart Time: Thursday, 28-Apr-2011 23:03:58 PDT
Parent Server Generation: 3
Server uptime: 1 day 16 hours 51 minutes 48 seconds
Total accesses: 243995 - Total Traffic: 1.7 GB
CPU Usage: u18.36 s1.75 cu2.88 cs0 - .0156% CPU load
1.66 requests/sec - 12.1 kB/second - 7.3 kB/request
1 requests currently being processed, 3 idle workers
W_..__....

Scoreboard Key:
"_" Waiting for Connection, "S" Starting up, "R" Reading Request,
"W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,
"C" Closing connection, "L" Logging, "G" Gracefully finishing,
"I" Idle cleanup of worker, "." Open slot with no current process

Srv PID Acc M CPU SS Req Conn Child Slot Client VHost Request
0-3 22481 0/29/36628 W 0.42 0 0 0.0 0.04 307.98 9 testdomain.com GET /server-status?refresh=10 HTTP/1.1
1-3 18115 0/271/37239 _ 6.33 4 236 0.0 1.20 255.47 forums.testdomain.com POST /mgc_cb_evo_ajax.php HTTP/1.1
2-3 - 0/0/35305 . 0.61 54 0 0.0 0.00 235.80 forums.testdomain.com GET /forumdisplay.php?s=e5pr
3-3 - 0/0/34526 . 9.19 69 0 0.0 0.00 235.66 ::1 00-defaultsite.com OPTIONS * HTTP/1.0
4-3 22258 0/49/28952 _ 1.12 4 0 0.0 0.21 194.55 forums.testdomain.com GET /cpstyles/kartel/kartel/misc/down9x9.gif HTTP/1.1
5-3 19843 0/232/27942 _ 3.10 1 137 0.0 0.77 181.58 unitetest.com GET //index.php?action=profile;u=174 HTTP/1.1
6-3 - 0/0/19301 . 2.31 569 0 0.0 0.00 130.28 ::1 00-defaultsite.com OPTIONS * HTTP/1.0
7-3 - 0/0/16325 . 0.26 2102 0 0.0 0.00 141.16 ::1 00-defaultsite.com OPTIONS * HTTP/1.0
8-3 - 0/0/5534 . 0.01 2103 0 0.0 0.00 36.51 ::1 00-defaultsite.com OPTIONS * HTTP/1.0
9-3 - 0/0/2243 . 0.09 2100 0 0.0 0.00 15.39 ::1 00-defaultsite.com OPTIONS * HTTP/1.0


Srv Child Server number - generation
PID OS process ID
Acc Number of accesses this connection / this child / this slot
M Mode of operation
CPU CPU usage, number of seconds
SS Seconds since beginning of most recent request
Req Milliseconds required to process most recent request
Conn Kilobytes transferred this connection
Child Megabytes transferred this child
Slot Total megabytes transferred this slot

SSL/TLS Session Cache Status:
cache type: SHMCB, shared memory: 512000 bytes, current sessions: 3
sub-caches: 32, indexes per sub-cache: 133
time left on oldest entries' SSL sessions: avg: 6 seconds, (range: 6...7)
index usage: 0%, cache usage: 0%
total sessions stored since starting: 571
total sessions expired since starting: 568
total (pre-expiry) sessions scrolled out of the cache: 0
total retrieves since starting: 15093 hit, 512 miss
total removes since starting: 0 hit, 0 miss

Tags:

apache, cpu, usage, enable, mod_status, domainmod_status, vhost, bandwith, domain, uri, vi, etc, httpd, conf, extendedstatus, server, sethandler, ip, htaccess, pasword, reload, browse, webserver, http, yourhost, ll, localhost, centos, aug, apr, pdt, restart, pdtparent, uptime, secondstotal, accesses, gbcpu, cu, cs, requests, kb, currently, processed, idle, workers, w_, __, scoreboard, quot, _, reply, keepalive, dns, lookup, logging, gracefully, finishing, cleanup, slot, srv, pid, acc, ss, req, conn, testdomain, refresh, forums, mgc_cb_evo_ajax, php, forumdisplay, pr, defaultsite, cpstyles, kartel, misc, gif, unitetest, index, os, mode, milliseconds, kilobytes, megabytes, ssl, tls, cache, shmcb, bytes, sessions, caches, indexes, entries, avg, stored, expired, expiry, scrolled, retrieves, removes,

Latest Articles

  • Unable to mount location Failed to retrieve share list from server: Connection timed out - Samba/Linux Filesharing Not working Ubuntu Mint Linux Solution
  • How To Resize, Reduce a Video to a Specific Size and Quality Ubuntu Linux using ffmpeg
  • vi how to delete all lines in the file
  • Linux Mint / Ubuntu 20 Intel I219 NIC disconnects
  • Linux can't boot/grub boot loader screen with no options solution
  • EFI PXE grub2 Howto guide for Linux EFI PXE Booting on Debian, Mint, Ubuntu, RHEL
  • Aruba/HP/Dell IAP Wireless Controller Common Default Passwords
  • Debian, Mint Ubuntu how to remove package and associated config files
  • Linux Grub not booting the intended kernel solution in Debian, Mint, Ubuntu how to specify which kernel to boot by default
  • QEMU KVM Keyboard Problems Not Working Right Repeating Characters, Ctrl+C Copy and Paste not working right when using PS2 mouse in guests Solution
  • Linux how to compile binary with static sharedobjects embedded instead of dynamic to use on multi-distributions and avoid glibc compatiblity issues
  • /bin/sh: msgfmt: not found error solution on Linux Compilation Ubuntu Debian Mint Centos
  • Mikrotik RouterOS CHR/ISO Basic and Quick Setup Howto Guide
  • qemu 4 compilation options
  • CentOS 7 8 PXEBoot Netinstall Not Working Solution "Pane is dead "new value non-exisetnt xfs filesystem is not valid as a default fs type"
  • CentOS 6 EOL yum repo won't work Error: Cannot find a valid baseurl for repo: base Solution
  • CentOS 7 8 How To Disable SELinux
  • Wordpress How To Add Featured Image To Post in Hueman Theme
  • kdenlive full reset how to erase all config files
  • CentOS 7 8 yum error Trying other mirror. To address this issue please refer to the below wiki article