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

  • Enable AMDGPU Linux Driver
  • apache symlinks denied even with followsymlinks
  • chown how to change ownership on a symlink
  • how to use ifplugd in Linux to execute a command or script when a NIC cable is unplugged or plugged in
  • dd how to backup and restore disk images including compression with gzip
  • mpv / mplayer with Radeon / AMD GPU Video Card Driver enable VDPAU GPU Accelerated Video Decoding
  • Wordpress Reset Blog User Password from MySQL Using Linux Bash and not PHPMyadmin
  • Ubuntu Linux Mint Debian xorg performance and tear-free tuning for AMD Radeon Based Cards
  • Centos 7 Stopped and Disabled Firewalld and ports still blocked
  • MariaDB / MySQL Reset Root Forgotten Password on Centos 7
  • Centos 7 How to install Mysql/Mariadb
  • PHP 7.2, Apache and Centos 7 How To Install
  • Ubuntu Debian Linux Mint r8169 r8168 Network Driver Problem and Solution
  • Linux 3D Performance benchmarks with glxgears 59-60fps solution
  • How To Install Asterisk 16 17 on Debian Ubuntu Linux
  • Linux Ubuntu Debian Centos How To Make a Bootable Windows 7, 8, 10, 2016, 2019 Server USB from ISO
  • How To Restore Windows MBR Bootsector from Linux using syslinux
  • Linux Ubuntu Cannot Print Large Images
  • Cannot Print PDF Solution and Howto Resize
  • Linux Console Login Screen TTY Change Message