DIAGNOSTIC SYSTEM AND METHOD FOR MONITORING PLURAL SOFTWARE APPLICATIONS USING PLURAL DIAGNOSTIC TOOLS
BACKGROUND OF THE INVENTION
It is common to perform diagnostics on the data produced as a result of the running of a computer software application. - Examples of such software applications include enhanced telephone services such as prepaid telephone long distance calling services. Each of these applications may have a different protocol in which the data therefrom is available.
Common diagnostics include Simple Network Management Protocol ("SNMP") translations, the creation of event logs, performance monitors, and displays. Each of these diagnostic tools may require that the data it receives be in a specified format .
Several diagnostic tools are available, e.g., graphical tables and histograms, visible alarms, statistics correlation logs, etc. It is often desirable to perform more that one diagnostic on an application, and it is often desirable to change the diagnostic (s) being performed on an application.
It has been the practice to connect known diagnostic tools directly to the servers on which a particular application is run and to provide the specific interface necessary to convert the data provided by the application to the format required by the diagnostic tool. Where two or more diagnostics are applied to the data from a single application, it has generally been necessary to utilize additional interface circuits. When a change in the diagnostic is desired, it has generally been necessary to reconnect the components through a appropriate interfaces on an application-by-application basis, resulting in considerable delay. In addition, correlation of data from more
than one application or server has required considerable interface complexity and often can not be accomplished at all with common diagnostic tools.
Accordingly, it is an object of the present invention to provide a novel diagnostic system and method which obviates many of the deficiencies of known systems.
It is another object of the present invention to provide a novel diagnostic system and method in which both sources of data and the diagnostic tools are abstracted.
It is yet another object of the present invention to provide a novel diagnostic system and method in which the physical location of both data sources and diagnostic tools is transparent to both sources and tools, i.e., network topology is abstracted from both data sources and diagnostic tools.
It is still another object of the present invention to provide a novel diagnostic system and method in which the assignment of diagnostic tools to a software application is selective in real time.
It is a further object of the present invention to provide a novel diagnostic system and method of providing a unified application programming interface wrapper around specific tools provided by Windows NT .
It is still another object of the present invention to provide a novel diagnostic system and method which implements a clearinghouse concept in software.
It is yet another object of the present invention to provide a novel diagnostic system and method in which a single tool may simultaneously monitor plural applications or servers
in order to correlate diagnostic data with respect to time or common events.
These and many other objects and advantages of the present invention will be readily apparent to one skilled in the art to which the invention pertains from a perusal of the claims, the" appended drawings, and the following detailed description of the preferred embodiments.
BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a functional block diagram of a prior art diagnostic system for N software applications and N diagnostic tools .
Figure 2 is a functional block diagram of the diagnostic system of the present invention for N software applications and
M tools.
DESCRIPTION OF PREFERRED EMBODIMENTS As shown in Figure 1, the prior art diagnostics for various software applications was generally on a one-to-one basis, i.e. each application such as App . N was directly connected to a specific diagnostic tool such as Tool M, although two applications such as App.l and App .2 may be connected to a single diagnostic tool Tooll, and a single application App .3 may be connected to two tools Tool2 and Tool3.
Exemplary applications in the environment of an enhanced services telephone system, particularly a prepaid long distance calling system, include call processing, data base management, and infrastructure management. Exemplary diagnostic tools
include the NT Performance Monitor, the NT Even Logger, the NT Task Manager and an extendible SNMP Agen .
In contrast with this one-to-one relationship between applications and the diagnostic tools, the present invention as shown in Figure 2 converts the application specific output signals from each application to a common protocol such as the Component Object Model ("COM") protocol. As a practical matter, the routing matrix 10 may need only interface for each different protocol in which the various applications provide data, each application with a common protocol may provide it to the routing matrix through the same interface.
The present invention also converts the common protocol of the routing matrix to the tool specific protocol for application to the various tools. As a practical matter, the switch matrix may require only one output interface for each different type of protocol required by the diagnostic tools.
The selective connection of the data from each application to one or more diagnostic tools may be accomplished in the suitable conventional routing matrix 10 under the control of a suitable conventional control server 12.
In addition to the potential saving in the number of interfaces required for a given number of applications and diagnostic tools, the present invention provides great flexibility in the assignment of diagnostic tools to an application in real time. This may be accomplished remotely using Web technology.
However, the most significant advantage of the present invention may be the connection of the routing matrix to a local area network, wide area network, or to the Internet, so
that the diagnostic tools may be physically located at sites widely spaced from any or all applications, and all may be different from the site of the control server. To each
application and to each diagnostic tool, each of the others appears to be a virtual component.
In the present system, the routing data may be selectively filtered to prevent the transmission of data not needed by a specific tool and particular configurations developed to diagnose or monitor a particular scenario may be stored for later recall.
The dynamic addition and deletion of sources and destinations provides great flexibility and new destination may be added via published API.
While preferred embodiments of the present invention have been described, it is to be understood that the embodiments described are illustrative only and the scope of the invention is to be defined solely by the appended claims when accorded a full range of equivalence, many variations and modifications naturally occurring to those of skill in the art from a perusal hereof .