The Apache HTTP Server can be configured to allow access to its "server-status" monitoring tool. This tool allows you to see what server processes are active and what they are doing. It also allows you to monitor the URLs that are being served and the time it takes to serve them. Your system administrator can configure Apache to allow access to the Server Status tool for you. It is wise to have restricted access on it, e.g. username / password. It can be either on the backend or frontend server, depending on what your administrator prefers. Usually the backend server is preferred, because that server is shielded If you are working on a multiple server environment, each of the servers can be outfitted with the Server Status tool.
What it looks like
When enabled, the Server Status tool can be accessed at the following URL:
http: //<server>/server-status |
You will get to see something like below:
Each of the characters in the big square represents a server process. In the screenshot above you can see many "_" characters, which means there are many server processes waiting for a connection. In other words: this particular server is not doing much at this moment.
When monitoring a web server, you typically refresh the server-status page (press F5) often in rapid succession. This allows you to see what the server is doing.
Troubleshooting
If all available slots display characters like "K" or "W", it indicates a problem; the server is getting clogged. The list of requests will give you a hint where to start looking for the source of this problem. Most likely some 'slow' URL is popular and gets requested often. From there you can devise strategies to avoid that URL from (a) being slow or (b) being called so often. Either strategy will lift some load of your server.