next up previous contents
Next: 6 Integration des Topologiemanagements Up: 5.4 Implementierung Previous: 5.4.4 Empfang von gefilterten

5.4.5 Fehlermeldungen aufgrund von Exceptions

Wenn während einem Methodenaufruf auf einem CORBA-Objekt eine Fehlersituation eintritt, erhält der Aufrufer eine Fehlermeldung in Form einer Exception als Rückgabewert. Exceptions sind in IDL definierte Datenstrukturen, die Information über die aufgetretenen Fehler beinhalten.

CORBA unterscheidet zwischen System_Exceptions und User_Exceptions. Erstere zeigen interne Systemfehler des ORBs an, während letztere vom Benutzer objektklassenspezifisch definiert werden können. Die System_Exceptions sind im CORBA-Standard vordefiniert (vgl. [IBM 94f S. 4-25]).

Es wurde ein Verfahren entwickelt, damit beim Auftreten von Exceptions automatisch Ereignismeldungen erzeugt werden, die durch die oben beschriebenen Mechanismen an NetView weitergeleitet werden. Damit kann jede Fehlersituation, die während einem Methodenaufruf auf einem beliebigen Objekt auftritt, von der Plattform registriert werden, wodurch die Grundlage für das Fehlermanagement einer CORBA-Umgebung gegeben ist.

Das entwickelte Verfahren beruht auf folgendem DSOM-spezifischen Mechanismus der Weiterleitung von Methodenaufrufen von Clients an Zielobjekte (vgl. Abb. 5.9):


 
Abbildung 5.9: Die Verarbeitung von Methodenaufrufen bei DSOM
\begin{figure}
\begin{center}
\mbox { \epsffile{bilder/dispatch.eps} }\end{center}\end{figure}

Es wurde eine Subklasse von SOMDServer entwickelt, bei der u.a. die Methode somdDispatchMethod überschrieben wurde (vgl. auch Kapitel 6). Jedesmal, wenn ein Methodenaufruf auf einem Zielobjekt durchgeführt wird (mit somDispatch), wird jetzt überprüft, ob bei dem Methodenaufruf eine Exception aufgetreten ist. Wenn ja, wird eine Ereignismeldung an den Event_Dispatcher verschickt, der sie wiederum an die Plattform weiterleitet. Durch Setzen von Filter-Attributen beim Server-Objekt könnte man erreichen, daß nur bestimmte Exceptions Ereignismeldungen bewirken.

Es besteht also grundsätzlich die Möglichkeit, anwendungsspezifische Funktionalität in die Verarbeitung von Methodenaufrufen zu integrieren. Dazu muß nur eine einzelne Methode (somdDispatchMethod des SOMDServer) überschrieben werden.

Dieses Prinzip kann nicht nur für die Fehlerüberwachung eingesetzt werden. Drei weitere Ansätze seien hier genannt:

Allerdings ist zu bedenken, daß die Ausführung der eigentlichen Methodenaufrufe um so langsamer werden wird, je größer der ,,Overhead`` durch die integrierte Managementfunktionalität ist. Aus diesem Grund ist es sinnvoll, die zusätzlichen Funktionen durch Setzen von Attributen bei den Server-Objekten ,,an- und ausschaltbar`` zu machen.

Die in diesem Kapitel beschriebenen Mechanismen zur Verarbeitung von CORBA-Ereignismeldungen durch die Managementplattform spielten auch bei der Integration des Topologiemanagements eine Rolle. Es wurden u.a. Komponenten entwickelt, die eine ereignisgesteuerte Aktualisierung von CORBA-Topologiedaten in der Plattformdatenbank ermöglichen. Das nächste Kapitel beschreibt diese Komponenten.


next up previous contents
Next: 6 Integration des Topologiemanagements Up: 5.4 Implementierung Previous: 5.4.4 Empfang von gefilterten
Copyright Munich Network Management Team