Module mod_status
The Status Module is only available in Apache 1.1 and later.
Function
The Status module allows a server administrator to find out how well
their server is performing. A HTML page is presented that gives
the current server statistics in an easily readable form. If required
this page can be made to automatically refresh (given a compatible
browser). Another page gives a simple machine-readable list of the current
server state.
The details given are:
- The number of children serving requests
- The number of idle children
- The status of each child, the number of requests that child has
performed and the total number of bytes served by the child (*)
- A total number of accesses and byte count served (*)
- The time the server was started/restarted and the
time it has been running for
- Averages giving the number of requests per second,
the number of bytes served per second and the average number
of bytes per request (*)
- The current percentage CPU used by each child and in total by
Apache (*)
- The current hosts and requests being processed (*)
A compile-time option must be used to display the details marked "(*)" as
the instrumentation required for obtaining these statistics does not
exist within standard Apache.
Enabling Status Support
To enable status reports only for browsers from the foo.com
domain add this code to your access.conf
configuration file
<Location /server-status>
SetHandler server-status
order deny,allow
deny from all
allow from .foo.com
</Location>
You can now access server statistics by using a Web browser to access the
page http://your.server.name/server-status
Note that mod_status will only work when you are running Apache in
standalone mode and not
inetd mode.
Automatic Updates
You can get the status page to update itself automatically if you have
a browser that supports "refresh". Access the page
http://your.server.name/server-status?refresh=N
to refresh the page
every N seconds.
Machine Readable Status File
A machine-readable version of the status file is available by accessing the
page http://your.server.name/server-status?auto
. This is useful
when automatically run, see the Perl program in the /support
directory of Apache, log_server_status
.
Full Instrumentation
To obtain full statistics you must compile Apache with a special
directive. On some machines there may be a small performance loss
if you do this. Try full statistics and see if you notice any
difference. If you do please contact
mark@ukweb.com and tell me your configuration.
Do this by adding the following to the AUX_CFLAGS line in the
"Configuration" file and then recompiling as usual.
AUX_CFLAGS= (something) -DSTATUS
It should be noted that if mod_status is compiled into
the server, its handler capability is available in all
configuration files, including per-directory files
(e.g., .htaccess). This may have
security-related ramifications for your site.