The previously described interfaces seamlessly integrate the NetView Event Management Services into the CORBA environment. Events can be used to convey various types of information inside a distributed management system. One of the main application areas however is to notify a manager (application or human) when a fault situation has occurred inside a managed resource.
For CORBA-based application and service management, the managed resources are often the objects themselves (as opposed to objects representing physical resources). CORBA objects handle fault situations during method invocations by generating exceptions which are passed back to the caller of the method. In order to use NetView for fault management in a CORBA (here: SOMObjects) environment, we modified the object adapter of the server processes in such a way that it generates fault events whenever an exception has occurred during a method invocation on an object. Please note that this refers only to internal errors during the processing of events coming from resources. All method invocations by clients on an object inside a SOMObjects server process are first received by the object adapter that connects the server to the ORB. The object adapter forwards the requests to a server object which is an instance of the class SOMDServer. This server object performs the actual dispatching of the request on the target object. We extended SOMDServer by introducing a subclass called ManagedServer and whose purpose is to check for exceptions after dispatching method calls on target objects. Whenever it detects an exception, it generates a fault event and sends it to NetView. By replacing the regular server object with a ManagedServer, all exceptions inside the corresponding server process can be captured by the management platform because such a server object is present in every SOMObjects server process. Therefore, the platform is also informed if errors occur in the distributed processing environment.
Subclassing from the server object is a convenient way to integrate management functionality into the dispatching of method calls. One can then survey how well the management infrastructure itself performs. Other possible application areas of this mechanism are: