Die grundsätzliche Funktionsweise der AIC API ist in
Abbildung skizziert. Eine Anwendung nutzt die
Application Library (AL)
AL Application Library , um
Managementobjekte zu generieren und mit Werten zu belegen. Diese
können von Managementanwendungen mit Hilfe der Client Library
(CL)
CL Client Library abgefragt und verändert werden. Die
Host Services sind Basisdienste, die z.B. für die sichere
Kommunikation zwischen den beiden Bibliotheken und für die
Kommunikation mit anderen Managementarchitekturen verantwortlich sind.
Der Anwendungsentwickler muß zum Zeitpunkt der Anwendungserstellung entscheiden, welche Information der Anwendung von Bedeutung für ein Managementsystem sein könnte. Er generiert die entsprechenden Managementobjekte (MOs) über die AL . Die Belegung der MOs mit Werten kann auf zweierlei Art geschehen: Entweder, der Anwendungsentwickler fügt explizite Aufrufe der AL in den Code der Anwendung ein, die den Wert des entsprechenden MOs aktualisieren, oder er registriert eine sogenannte Polling Function für das MO, die automatisch von der AL in regelmäßigen Abständen aufgerufen wird und für die Aktualisierung des Wertes sorgt. Für die Implementierung der Polling Function ist wiederum der Anwendungsentwickler verantwortlich.
Der Zugriff auf die MOs erfolgt dann, wie bereits erwähnt, durch Aufrufe der CL. Außerdem kann für jedes MO eine Threshold Function registriert werden, die ähnlich wie die Polling Function regelmäßig aufgerufen wird. Diese dient der Überwachung der MOs auf Überschreitung definierbarer Grenzwerte und muß ebenfalls vom Anwendungsentwickler implementiert werden. Im Falle einer Grenzwertüberschreitung kann die Threshold Function beispielsweise - wiederum durch Aufruf der AL - ein Event generieren, das die Information an die angeschlossenen Managementsysteme weitergibt.
Die AIC API erlaubt nicht nur die bloße Überwachung von Anwendungen, sondern darüber hinaus auch steuernde Eingriffe. Dies kann entweder über die explizite Belegung von MOs mit Werten über die CL erfolgen oder aber durch den Aufruf der sogenannten DoAction Function. Hierbei handelt es sich um eine beliebige, vom Anwendungsentwickler zu implementierende Funktion, die bei der AL registriert und über die CL aktiviert werden kann.
Neben den bereits erwähnten Beispielen für Host Services, die die sichere Kommunikation zwischen den Bibliotheken gewährleisten und die Anbindung an weitere Managementarchitekturen ermöglichen, existieren noch weitere Basisdienste: Bei einem Namensdienst ( Name Service) lassen sich beispielsweise alle auf dem jeweiligen System überwachten Anwendungen erfragen. Für die regelmäßige Überwachung der Anwendungen auf Totalausfall existiert ein Heartbeat Mechanism, der in regelmäßigen Abständen überprüft, ob die jeweilige AL noch auf Anfragen reagiert. Ein Object Cache erhöht die Leistung des Systems, indem er Anfragen beantwortet, ohne die eigentliche Anwendung kontaktieren zu müssen.
Die AIC API ermöglicht es einem Anwendungsentwickler ,
Managementinformation aus der Anwendung mit Hilfe eines generischen
Mechanismus Managementsystemen zur Verfügung zu stellen.
Grundätzlich ist sie somit geeignet, die in
Kapitel geforderte
Managementinformation zu liefern. Der Anwendungsentwickler erhält
allerdings weder Hilfestellung in der Auswahl der benötigten
Information noch bei der eigentlichen Instrumentierung der Anwendung.
Ihm wird lediglich ein Mechanismus zur Verfügung gestellt, der die
Kommunikation mit den eigentlichen Managementsystemen vor ihm
verschattet. Der resultierende Instrumentierungsaufwand ist daher
dennoch als zu hoch zu betrachten und wird die weitere Verbreitung der
AIC API negativ beeinflussen.