Anschluss an den
Kommunikationskanal-Monitor
Der Kommunikationskanal-Monitor gibt Systemadministratoren die Möglichkeit, Informationen zu Kommunikationskanälen abzurufen und Kommunikationskanäle zu administrieren.
Dieser Monitor stellt aktuelle Laufzeitinformationen zu den Adaptern eines Kommunikationskanals zur Verfügung. Darüber hinaus bietet er einen Anschluss an das Alerting.
Interface-Überblick
Merkmal |
Wert |
Name |
Adapter Administration und Monitoring (AAM) |
Zweck |
Abfrage des Kommunikationskanalstatus, Administration der Kanäle (starten, stoppen) Anbindung an das Alert-Framework |
Typ |
J2EE-Service |
Technischer Name |
com.sap.aii.af.service.administration.api |
Zertifizierung |
Optional |
Syntax |
com.sap.aii.af.service.administration.api |
● Sie starten den Kommunikationskanal-Monitor in der Runtime Workbench im Komponenten-Monitoring. Dort wählen Sie eine Adapter Engine aus. Auf der Registerkarte Status wählen Sie dann Kommunikationskanal-Monitoring.
Im PCK rufen Sie den Monitor über einen Link auf der Startseite des PCK auf.
Zur Verwendung des Kommunikationskanal-Monitors siehe auch: Kommunikationskanal-Monitor
● Sie können den Kommunikationskanal-Monitor auch unter //localhost:50000/AdapterFramework/admin/channelstatus.jsp aufrufen.
Die APIs für das Kommunikationskanal-Monitoring finden Sie in der Hierarchie unterhalb des Adapter-Framework Serive-Pakets com.sap.aii.af.service.administration.api.
● Registrierung und Callback Interfaces: com.sap.aii.af.service.administration.api
● Kanalbezogene Interfaces und APIs: com.sap.aii.af.service.administration.api.cpa
● Monitoring-Interfaces und APIs: com.sap.aii.af.service.administration.api.monitoring
● Lokalisierungs-Interfaces und APIs: com.sap.aii.af.service.administration.api.i18n
Zunächst müssen Sie Ihren Adapter am Adapter-Framework Core-Service registrieren. Führen Sie die Registrierung mit der Methode AdapterRegistry.registerAdapter(String, String, AdapterCapability[], AdapterCallback[]) durch. Ein Adapter wird durch seinen Namen und Namensraum eindeutig identifiziert. Geben Sie diese beiden Werte als die ersten beiden Parameter im Aufruf der Methode an.
Für den Beispieladapter sind diese Parameter JCA als Adaptername und http://sap.com/xi/XI/sample als Namensraum.
Danach können Sie die Adapterfähigkeiten angeben.
AdapterCapability |
Beschreibung |
AdapterCapability.NONE |
Es werden keine besonderen Fähigkeiten unterstützt. |
AdapterCapability.PUSH_CHANNEL_STATUS |
Hiermit kann der Adapter Informationen über den Status des Kommunikationskanals an das Adapteradministrations- und Monitoring-Framework weiterleiten (siehe unten unter Push-Mechanismus). |
AdapterCapability.PUSH_PROCESS_STATUS |
Hiermit kann der Adapter Prozessstatusinformationen an das Adapteradministrations- und Monitoring-Framework weiterleiten (siehe unten unter Prozessstatus). Prozessstatusinformationen können SAP Alerts auslösen (siehe unten). |
Der Parameter AdapterCallback übergibt die Klassen an das AAM-Framework, welche die AAM-Callback-Interfaces implementieren. Im Fall des Beispieladapters implementiert XIConfiguration folgende Interfaces:
● ChannelLifecycleCallback
● ChannelStatusCallback
● LocalizationCallback.
Es ist aber auch denkbar, dass diese Schnittstellen von unterschiedlichen Klassen implementiert werden, die dann über den AdapterCallback Parameter übergeben werden.
Stellen Sie sicher, dass Sie die Methode unregisterAdapter(String, String) aufrufen, wenn der Adapter beendet wird.

Öffnen Sie SPIManagedConnectionFactory.java und suchen Sie nach der Zeichenkette CS_ADMONR und CS_ADMOND.
Unter CS_ADMONR wird die Registrierung des Adapters am Adapteradministrations- und Monitoring-Framework gezeigt.
Unter CS_ADMOND wird die Deregistrierung des Adapters am Adapteradministrations- und Monitoring-Framework gezeigt.
Im Kommunikationskanal-Monitor können zwei Zustände überwacht werden, der Kanalstatus und der Prozessstatus.
● Der Kanalstatus zeigt an, ob ein Kanal gestartet ist und erfolgreich Messages verarbeitet, ob er auf einen Konfigurationsfehler gestoßen ist oder ob er gestoppt ist. Um den Kanalstatus zu ermitteln, bietet das Adapteradministrations- und Monitoring-Framework einen Polling- und einen Push-Mechanismus an.
○ Polling-Mechanismus
Implementieren Sie das ChannelStatusCallback-Interface, damit das AAM-Framework einen Callback aufruft, sobald ein Benutzer Statusinformationen über einen Kanal im Kommunikationskanal-Monitoring erhalten möchte. Die Methode getChannelStatuswird dann aufgerufen. Das AAM-Framework erwartet, dass der Container ChannelStatus mit Statusinformationen gefüllt wird. Verwenden Sie ChannelStatusFactory, um eine Instanz dieser Klasse zu erhalten. Verwenden Sie das registerAdapter-API , um die ChannelStatusCallback-Implementierung am AAM-Framework zu registrieren.

Öffnen Sie XIConfiguration.java und suchen Sie nach der Zeichenkette CS_ADMON.
Unter CS_ADMON wird beschrieben, wie Sie den Kanalstatus ermitteln können.
○ Push-Mechanismus
Der Adapter stellt dem AAM-Framework Statusinformationen während der Laufzeit zur Verfügung. Das AAM-Framework unterstützt diesen Mechanismus mit den Methoden reportChannelStatus des MonitoringManager.
Um eine Instanz zu erhalten, verwenden Sie MonitoringManagerFactory.
Für Empfängerkanäle müssen Sie die Events processing started und processing stopped nicht explizit schreiben lassen. Die Events werden automatisch durch die Adapter-Framework Listener-Bean geschrieben.
● Der Prozessstatus wird dem AAM-Framework ausschließlich über die Methoden reportProcessStatus des MonitoringManager-Interface gemeldet.
Der Kanalstatus entspricht der Spalte Zustand im Kommunikations-Monitor. Der Prozessstatus wird in der Spalte Verarbeitungsfehler angezeigt.
Das AAM-Framework unterstützt das LocalizationCallback-Interface. Wenn ein Adapter eine Instanz dieses Interface am AAM-Framework registriert, wird dieser Callback für jeden String, der dem AAM-Framework bereitgestellt wird, aufgerufen, bevor er dem Benutzer angezeigt wird.

Für Textinformationen aus ChannelStatusCallback wird der Callback nicht aufgerufen.
Öffnen Sie XIConfiguration.java und suchen Sie nach der Zeichenkette CS_LOCAL.
Eine allgemeine LocalizationCallback-Implementierung wird mit der Klasse ResourceBundleLocalizationCallback bereitgestellt.
Über das AAM-Framework wird eine Möglichkeit angeboten, Alerts auszulösen, die beispielsweise den Versand von SMS-Nachrichten zu einem Administrator bewirken. Dazu muss der Adapter ein Fehler über den Prozessstatus mit dem Wert FATALmelden. Dies geschieht über den Aufruf reportProcessStatus(). Der Adapter muss bei der Registrierung über AdapterCapability.PUSH_PROCESS_STATUS angeben, dass er den Prozessstatus unterstützt. Die Konfiguration der Alert-Regeln geschieht im Alert Framework, siehe auch: Alert-Konfiguration
Hinweis

Für einen Beispiel-Sender-Adapter können sie den Parameter Raise Error Condition (demo) auf Raise Rollback ... setzen. Dadurch wird ein Fehler bei der Sender-Message-Verarbeitung ausgelöst. Zusätzlich wird ein Prozessstatus FATAL an das AAM-Framework gemeldet.
Öfffnen Sie SPIManagedConnectionFactory.java und suchen Sie nach der Zeichenkette CS_PROALERT.