Web Status Quick Start Guide

About

Because many applications are web-based, monitoring web servers is essential to prevent and minimize downtime. Apache is the most widely used web server software. Apache's mod_status module exposes key information about the internal state of a web server and its processes. SevOne NMS comes with a mod_status object type called Apache Mod Status. Using SevOne's Web Status plugin, you can keep a close eye on such statistics as:

  • The amount of traffic to and from the web server
  • The number of times sessions were successfully (or unsuccessfully retrieved)
  • The amount of memory
  • The current cache size

These are just a few examples of what you can monitor with the Web Status plugin. For a complete list, please refer to section Web Status Statistics.

In this document, you will find the steps to set up devices for Web Status monitoring. Also, Web Status statistics and recommended policies for Web Status monitoring are covered.

Configuration Steps

Perform the steps in this section to enable devices to send Web Status data and enable the Web Status plugin.

Enable Devices to Send Web Status Data to SevOne NMS

You must turn on mod_status for each web server device. If you plan to use mod_status statistics such as the number of accesses, the amount of traffic, and SSL/TLS cache, you must also turn ExtendedStatus on.

Perform the steps below to turn on mod_status and ExtendedStatus for devices that you want to send Web Status data to SevOne NMS.

Note: The workflow below is outside of SevOne NMS. It may not include all of the steps that your network requires to enable devices to send Web Status data. If these instructions do not apply to your network, please refer to your device manufacturer's documentation for specific instructions.

Gentoo

  1. From the command line, enter the following command to open the apache2 file for editing.
    nano /etc/conf.d/apache2
  2. Next, you must add the STATUS key word to Apache's start options. Locate APACHE2_OPTS in the file and add -D STATUS.
  3. Save your changes and exit the file.
  4. Enter the following command to enable SSL and collect statistics on it.
    set -D SSL
  5. Enter the following command to open the configuration file for editing.
    nano /etc/apache2/modules.d/00_mod_status.conf
  6. Find the Location tag and configure it with the following settings. Replace (IP address or hostname of SevOne NMS) with the relevant information.
    <Location /server-status>
        SetHandler server-status
        Order deny,allow
        Deny from all
        Allow from (IP address or hostname of SevOne NMS)
    </Location>
  7. Locate ExtendedStatus and make sure it is set to On.
  8. Save your changes and exit the file.
  9. Enter the following command to restart Apache and apply changes.
    /etc/init.d/apache2 restart
  10. Enter the following command to test mod_status. Replace (your server) with the IP address or hostname of the server.
    http://(your server)/server-status

Ubuntu

  1. From the command line, enter the following command to enable mod_status.
    sudo /usr/sbin/a2enmod status
  2. Enter the following command to enable SSL and collect statistics on it.
    sudo /usr/sbin/a2enmod ssl
  3. Enter the following command to open the configuration file for editing.
    nano /etc/apache2/mods-enabled/status.conf
  4. Find the Location tag and configure it with the following settings. Replace (IP address or hostname of SevOne NMS) with the relevant information.
    <Location /server-status>
        SetHandler server-status
        Order deny,allow
        Deny from all
        Allow from (IP address or hostname of SevOne NMS)
    </Location>
  5. Locate ExtendedStatus and make sure it is set to On.
  6. Save your changes and exit the file.
  7. Enter the following command to restart Apache and apply changes.
    sudo /etc/init.d/apache2 restart
  8. Enter the following command to test mod_status. Replace (your server) with the IP address or hostname of the server.
    http://(your server)/server-status

Enable Web Status Plugin

The Web Status plugin is automatically enabled for new devices added to SevOne NMS. Perform the following steps to enable or disable the Web Status plugin for a device.

  1. From the navigation bar, click Devices and select Device Manager.
    deviceMgr

  2. Locate the device that you would like to enable the Web Status plugin on and click wrenchIcon to display the Edit Device page.
    editDevice

  3. The plugin section appears in the lower half of the Edit Device page and is set to SNMP by default.
  4. Click the plugin drop-down and select Web Status.
    webStatus

  5. Select the Check for Apache server status page and poll metrics check box to enable discovery of the Apache Mod Status object type and to poll Web Status indicators on the device.
  6. Select the Use HTTPS check box to authenticate onto the device via HTTPS.
    Note: If you plan to use HTTPS, you must add a certificate on the Authentication Settings page (Administration -> Access Configuration -> Authentication Settings -> System Authentication tab). For additional details, please refer to SevOne NMS System Administration Guide > section Authentication Settings.
  7. In the Port field, enter the port on the device that SevOne NMS should use for communication.
  8. Click Save.

Web Status Statistics

The following subsections provide information about available statistics for particular settings. Also included is a list of statistics collected by SevOne's Web Status plugin. For recommended policies, see the next section, Recommended Policies in SevOne NMS.

ExtendedStatus On (Recommended)

When you turn ExtendedStatus on, the following statistics are available.

  • Server Uptime - The uptime of the entire server.
    Note: This is different from the ServerUptime that displays when ExtendedStatus is off. In that case, ServerUptime just refers to the uptime of the Apache process.
  • Total Accesses - The number of requests sent to Apache.
  • Total Traffic - The amount of traffic that Apache has sent/received.
  • CPU Usage - In this case, the result of the POSIX function times, which returns statistics for a single process only. Apache usually runs as a multi-process application. From the perspective of a single process, this is a counter value.
  • Requests Per Second - The average number of requests per second (averaged over the life of the process).
  • Bytes Per Second - The average number of bytes per second (averaged over the life of the process).
  • Bytes Per Request - The average number of bytes per request (averaged over the life of the process).
  • Number of Busy Workers - The number of threads that are currently serving pages in some capacity.
  • Number of Idle Workers - The number of threads that are doing nothing but are waiting for a request to come in.

ExtendedStatus Off (Not Recommended)

Leaving ExtendedStatus off puts the least load on Apache and results in the display of the following basic information about the Apache server itself. It also provides a visual representation of the threads and a warning expressing the need to turn ExtendedStatus on.

  • Server Uptime - How long the Apache server has been running.
  • Number of Busy Workers - The number of threads that are currently serving pages in some capacity.
  • Number of Idle Workers - The number of threads that are doing nothing but are waiting for a request to come in.

SSL

Apache uses a multi-process model, and not all requests are not handled by the same process. This causes the SSL session information to be lost when a client makes multiple requests. Multiple SSL handshakes cause considerable overhead on the webserver and the client. To avoid this, SSL session information needs to be stored in an inter-process session cache to allow all the processes access to handshake information. There are two cache types: SHMCB and DBM. SHMCB stores the cache in shared memory as a cyclic buffer, and DBM stores the cache as a DBM hash file on the local disk.

SHMCB Statistics

If the cache type is set to SHMCB, the following statistics are available for the Web Server plugin to collect.

  • Current Sessions - Current sessions.
  • Shared Memory - The amount of memory allocated to the cache.
  • Subcaches - The number of subcaches.
  • Indexes Per Subcache - The number of indexes per subcache.
  • Index Usage - The percentage of the index used.
  • Cache Usage - The percentage of the cache used.
  • Total Sessions Stored Since Starting - The total number of sessions ever stored.
  • Total Sessions Expired Since Starting - The total number of sessions ever expired.
  • Total (Pre-expiry) Sessions Scrolled Out of the Cache - The number of sessions that have been scrolled out of the cache before they expired.
  • Total Retrieves Since Starting: Hits - The number of times a session was successfully retrieved.
  • Total Retrieves Since Starting: Misses - The number of times that a session was not retrieved because the session was not there.
  • Total Removes Since Starting: Hits - The number of times that a session was removed successfully.
  • Total Removes Since Starting: Misses - The number of times a session was not removed because the session was not there.

DBM Statistics

The DBM cache type provides the following statistics.

  • Current Sessions - Current sessions.
  • Maximum Size - The maximum allowed cache size (can be unlimited).
  • Current Size - The current size of the cache.
  • Average Session Size - The average size of a session.

Web Status Plugin

The Web Status plugin collects the following statistics.

  • Accesses - The number of requests sent to Apache.
  • Availability of the Page - Whether or not SevOne NMS could access the page.
  • Average Request Size - The average number of bytes per request. This is an average over the life of the process, which is an unknown period of time. If possible, avoid using this statistic.

  • Average Session Size - The average size of a session.
  • Average Transfer Speed -The average number of bytes per second. This is an average over the life of the process, which is an unknown period of time. If possible, avoid using this statistic.
  • Cache Usage - The percentage of the cache used.
  • Current Cache Size - The current size of the cache.
  • Current Sessions - Current sessions.
  • Extended Status On - Displays 1 if ExtendedStatus is on or 0 if ExtendedStatus is off.
  • Index Usage - The percentage of the index used.
  • Indexes Per Subcache - The number of indexes per subcache.
  • Maximum Cache Size - The maximum allowed cache size.
  • Removes Hit - The number of times a session was removed successfully.
  • Removes Missed - The number of times a session was not retrieved because the session was not there.
  • Retrieves Hit - The number of times a session was successfully retrieved.
  • Retrieves Missed - The number of times that a session was not retrieved because the session was not there.
  • Sessions Expired - The number of sessions ever expired.
  • Sessions Scrolled - The number of sessions that have been scrolled out of the cache before they expired.
  • Sessions Stored - The the number of sessions ever stored.
  • Shared Memory - The amount of memory allocated to the cache.
  • Subcaches - The number of subcaches.
  • Traffic - The amount of traffic that Apache has sent/received. This is an average over the life of the process, which is an unknown period of time. If possible, avoid using this statistic.
  • Workers Busy - The number of threads that are currently serving pages in some capacity.
  • Workers Busy Percent - The percentage of busy workers.
  • Workers Idle - The number of threads that are doing nothing but are waiting for a request to come in.
  • Workers Idle Percent - The percentage of idle workers.
  • Workers Total - The total number of workers.

Terms

Security Sockets Layer (SSL) A security protocol used for establishing an encrypted connection between a client and server.