Immediate Notification
Despite the near-real-time capability for APM reports, there is no reasonable way to use them to get instant notification when bad transactions threaten an SLA (service-level agreement). Instead, the APM Exception Table lets the management station set individual thresholds for the performance of any application. A notification is sent from the APM agent to the management station immediately after a poor-quality transaction is detected.
This notification facility is an excellent tool for a helpdesk. If a glitch causes a number of transaction failures, a root-cause analysis can be performed, which could result in a diagnosis even before the first customer calls the helpdesk. The stringent performance demands of e-commerce also dictate immediate notification if performance is lagging. A notification of sluggishness in a Web page could kick off a quick test to confirm that a problem exists and, if it does, page the Web-site support team for speedy resolution.

More on Streaming Media
For the most part, an APM measurement is incomplete until the transaction finishes. Thus, transaction metrics aren't added to a report until the transaction is complete. This presents a dilemma in streaming media, where transactions can live a long time, such as in a two-hour videoconference. It would be a service disaster if IT had to wait until the end of the videoconference to diagnose rotten performance.
The APM Current Transaction Table is designed to solve this problem. It shows all transactions that are executing and the responsiveness they have so far exhibited. As soon as a transaction finishes, it is removed from this table. Thus the performance of long-lived transactions can be observed.
User-Friendly Naming
Desktops rarely are named in DNS and usually are addressed with fleeting DHCP addresses. Displaying desktop names as IP addresses, like 10.1.2.3, presents a fatal flaw in the pursuit of user-friendly reporting.
The APM MIB's APM Name Table solves this problem. It provides a way to associate a machine name and a user name with each client desktop. It is up to the implementor of the APM agent to discover this information. This is simple for desktop-based APM agents because the information can be retrieved with a simple Windows call. Probe-based solutions can get the information by watching the desktop register with the network and gleaning the required information.
We've been using simple examples of applications (HTTP, POP3, SAP/R3) to describe the reporting infrastructure of the APM MIB. However, a whole new dimension of power can be unleashed by digging deeper.
Application Verbs
Just because a POP3 Login and a POP3 Retrieval are part of the same application and implemented by the same programs doesn't mean that their performance characteristics are similar. At the very least, POP3 Login is transaction-oriented, while POP3 Retrieval is transport-oriented (performance depends on how much mail you have). Most applications really consist of a number of "verbs" that have different performance characteristics and may deserve to be monitored separately.
The APM MIB allows the measurement of a parent application, its component verbs or both. The value of monitoring both is that you can watch the top-level application and then drill down to the verbs when trouble is spotted to learn which subcomponents are in trouble.
As applications are increasingly being hosted on the Web, it is more and more important to treat HTTP not as one application but as many applications. A Web server may have dozens of business applications running on it -- each worthy of being monitored separately -- distinguished only by the URL used to reach the application. The circumstances are numerous:
» An intranet or ASP scenario in which a business application is running on one or more Web pages or scripts.
» A Web-hosting scenario in which you want to measure the service level for a particular customer.
» An e-commerce scenario in which the performance of certain pages needs to be monitored more closely (that is, a credit-card authorization page).
To meet this need, the APM HttpFilter Table lets a management station register a set of URLs and have each treated as a separate application. These new applications will each be visible as a new set of statistics in APM Reports, as new entries in the Current Transaction Table and as potential alarms from the APM Exception Table.
While standard and packaged applications get a lot of attention, some of the most valuable applications in business are custom, in-house or proprietary. These applications will never be registered as standard applications, and APM vendors are unlikely to build support for them into their products. Nevertheless, APM vendors have developed various techniques that let their customers configure the software to monitor custom user-defined applications.
The User-Defined Application Table lets an APM agent create a new, virtual application for each user-defined application it can monitor. As in the HttpFilter Table, data for these applications is collected and reported just as it is for a regular application.
What's Next for APM
APM is a methodology that orients IT thinking toward the proper goals, gives better insights into service levels and how to improve them, and improves communication with the customer. The next step in the growth of this industry is the emergence of the APM MIB standard. The APM MIB provides a rich set of features that meet the requirements discovered during the early years of the APM industry. As a standard, however, it goes farther by providing customers a "known quantity," as well as interoperability among the vendors and the different architectures.
Steve Waldbusser is writing standards for APM and policy-based management. Send your comments on this article to him at waldbusser@nextbeacon.com.
|