Monitor your Web server in real time, Part 1
The Percollator applet makes its Web-monitoring debut
By Rinaldo S. Digiorgio, JavaWorld.com, 04/01/96
There are a number of factors involved in the successful delivery of Web pages to browsers. One is the quality of the content,
and another is the quality of the service in terms of availability and response time. Over the next three months, we'll develop
a monitoring applet that will provide a framework for analyzing your Web server's performance. Finally, we'll turn it lose
on
JavaWorld's server, letting you see how it performs.
The three-part series will roughly follow this roadmap:
- GUI interface and interface to static data display
- User-selectable graph types and statistics
- Alarms and a real-time interface
Current state of the art
There are few if any packages today that automatically monitor your site from any station capable of running Java. In New
York we are often not close to the NOC (Network Operations Center) when a crisis occurs with the Web server. NOC access usually
is restricted and has a high infrastructure associated with it, making it too involved to bring up performance-analysis tools
on the server itself from remote locations.
Many studies indicate that Internet Web users simply go to another site when it is not working on the Internet. Intranet users, however, are another matter. A company's internal Web server should always be available and reliable since its users
have no place else to go. Current monitoring packages tend to lack interactivity and offer little more than GIF files flying
back and forth across the network.
How does one monitor a Web site?
Many computer companies trying to sell Web server solutions have several core technologies that can be used to monitor Internet
sites. Basically, the principles are no different from managing other sites, except for the lack of control over delivery
to the user and the lack of SNMP-cognizant back-end httpd servers.
Proposed solutions should address the following system-monitoring, fault resolution, and system-analysis requirements. System
analysis refers to understanding how data moves in and out of the system and what type of data it is. Fault resolution refers
to restoring service after some interruption. Systems analysis data often is used during fault resolution to understand what
the state at the time of a fault was.
System monitoring
Here are some key points that any system-monitoring package should address:
- Instant notification of loss of connectivity. This is often accomplished by pinging at a specified rate to various objects
in the vicinity. The pings are programmed from a state machine so that a router being down is not confused with a system being
down. Another approach is to use alerts that generate traps when the specified condition arises.
- The httpd server software is not responding, but the CPU is operational. A series of httpd commands can be sent at a specified
rate and the response can be analyzed. Server providers should offer SNMP agents that generate performance parameters and
indicate operational status. Ideally they should send a Java applet with the data to analyze the data and preferably not use
e-mail as the delivery mechanism. How would you like to tell your manager that the alert was delayed in the mail?
- There are a number of SNMP parameters available in the MIBS that need to be looked at. Further research is required on the
interaction of these parameters and Web load. The correlation of several of these parameters can be very useful in identifying
bottlenecks. Some companies are beginning to provide servers that have this ability delivered via Java.
- Probable CPU failure. The LAN is okay but the CPU is not responding.
- End-to-end round-trip times between strategic points on the internal network and important external networks. A custom program
needs to be written to do this.
- Router alarms for rejects due to congestion and lack of input traffic. This should be programmable as an alarm with SNMP directly.
- Optional periodic attack by a security package with important holes noted. Site specific using various packages like Satan
and COPS.
- Implement monitoring scripts for DNS described in DNS and BIND by Paul Albitz & Cricket Liu (O'Reilly & Associates, 1994).
System analysis
A system-analysis package should provide the following features: