Show TOC Anfang des Inhaltsbereichs

Funktionsdokumentation Monitor Transactional RFC and Queued RFC  Dokument im Navigationsbaum lokalisieren

Verwendung

Der transaktionale RFC und der queued RFC sind Varianten des Remote Function Call, die dazu dienen, den Datentransfer zwischen verschiedenen Systemen noch zuverlässiger und sicherer zu machen.

Der transaktionale RFC garantiert die folgenden Eigenschaften:

·        Der Aufruf wird im Zielsystem genau einmal ausgeführt.

·        Aufrufe, die zu einer Logical Unit of Work (LUW) gehören, werden entweder komplett oder gar nicht ausgeführt.

Falls das Zielsystem beim Aufruf nicht verfügbar ist, bleibt der Aufruf in der lokalen Warteschlange stehen. Das rufende Dialogprogramm kann dennoch weiterlaufen. Wird das Zielsystem nicht innerhalb eines bestimmten Zeitraums aktiviert, so wird der Aufruf als Hintergrund-Job eingeplant.

Obwohl der tRFC die Zuverlässigkeit des Datentransfers bereits erheblich erhöht, besitzt er auch Nachteile. So ist nicht gewährleistet, dass die in der Anwendung vorgegebene Reihenfolge der LUWs eingehalten wird. Es gibt lediglich die Garantie, dass alle LUWs früher oder später übertragen werden.

Queued RFC (qRFC mit Ausgangsqueue)

Um diesen Nachteil auszugleichen, wird eine Serialisierung des tRFC über Warteschlangen (Queues) vorgenommen. Sie wird als queued RFC (qRFC) bezeichnet. Mit der Serialisierung wurde eine Ausgangsqueue für tRFC geschaffen, weshalb von einem qRFC mit Ausgangsqueue gesprochen wird. Die Besonderheiten des qRFC sind vor allem:

·        Eine LUW wird erst dann übertragen, wenn sie keine Vorgänger (bezogen auf die in den Anwendungen definierte Reihenfolge) in den beteiligten Queues hat. Ferner wird nach der Ausführung einer qRFC-Transaktion versucht, alle wartenden qRFC-Transaktionen der Reihenfolge nach automatisch zu starten.

·        Für die Queue-Verwaltung werden ein Queue-Name und ein Queue-Zähler pro qRFC-Transaktion benötigt. Jeder tRFC-Aufruf, der chronologisch abgearbeitet werden soll, wird einem von der Anwendung zu bestimmenden Queue-Namen zugeordnet.

qRFC mit Eingangsqueue

Weiterhin ist eine Serialisierung der ankommenden RFC-Aufrufe von anderen Systemen möglich. Damit ist gewährleistet, dass auch ankommende Aufrufe immer in der Reihenfolge ihres Eintreffens durchgeführt werden. Außerdem wird durch die Serialisierung der eingehenden Aufrufe die maximale Last des Zielservers durch RFC begrenzt.

Überwachung mit dem Alert-Monitor

Sie können mit dem Teilbaum Transactional RFC and Queued RFC Fehler und blockierte Queues (im Zusammenhang mit transaktionalen RFCs und queued RFCs) schnell aufspüren. Als Analysemethode sind die entsprechenden Spezialmonitore hinterlegt, mit denen Sie die Ursache des Fehlers schnell beseitigen können. Der Teilbaum befindet sich im Monitor Communications der Monitorsammlung SAP CCMS Monitor Templates.

Voraussetzungen

Sie müssen die Überwachung von qRFC-Aufrufen einrichten.

Funktionsumfang

Diese Grafik wird im zugehörigen Text erklärt

Der Monitor enthält die folgenden Monitorbaumelemente (Monitoring Tree Elements = MTEs):

MTE-Name
(MTE-Klasse)

Bedeutung

ARFCSSTATE: Outbound tRFC Calls
(CCMS_tRFC_Outbound_Tbl)

Monitorobjekt mit Informationen zu den LUWs und tRFC-Aufrufen, die auf die Ausführung auf ihrem Zielsystem oder einer externen Komponente warten

Calls w/ Communication Errors – CPICERR
(CCMS_tRFC_qRFC_CPIC_Errors)

Anzahl der tRFC-Aufrufe, die wegen Problemen bei der Verbindungs­herstellung oder der Kommunikation mit dem Zielsystem oder einer externen Komponente nicht ausgeführt wurden; je nach Einstellungen (Transaktion SM59) wird der Versuch mehrfach wiederholt

Calls w/ Execution Errors – SYSFAIL
(CCMS_tRFC_qRFC_SYSFAIL_Errors)

Anzahl der tRFC-Aufrufe, die wegen eines Problems bei der Ausführung im Zielsystem oder einer externen Komponente nicht ausgeführt werden konnten

Calls w/o Server Resources – SYSLOAD
(CCMS_tRFC_qRFC_SYSLOAD_Status)

Anzahl der tRFC- und qRFC-Aufrufe mit Ausgangsqueue im Status SYSLOAD; dies sind Aufrufe, die wegen mangelnder Ressourcen im Zielsystem nicht bearbeitet werden konnten

ARFCSSTATE: Inbound tRFC/qRFC Calls
(CCMS_tRFC_qRFC_Inbound_TIDs)

Monitorobjekt mit Informationen zu tRFC- und qRFC-Aufrufen, die in diesem System auf die Ausführung warten; nach der Ausführung werden Sie aus der Tabelle ARFCRSTATE gelöscht

Total Calls
(CCMS_qRFC_Inbound_Total)

Anzahl der tRFC- und qRFC-Aufrufe, die in diesem System auf die Ausführung warten und darum in der Tabelle ARFCRSTATE gespeichert sind

Outbound Queues
(CCMS_qRFC_Outbound_
Queues_Summary)

Teilbäume, die Protokollnachrichten der ausgehenden qRFC-Aufrufe zu externen Systemen enthalten; diese Nachrichten sind nach den verschiedenen Queue-Gruppen geordnet: zu jeder Gruppe gehört ein  Monitorobjekt mit dem Namen <Gruppenname> Outbound Queues

Inbound Queues
(CCMS_qRFC_Inbound_
Queues_Summary)

Teilbäume, die Protokollnachrichten der eingehenden qRFC-Aufrufe von externen Systemen enthalten; diese Nachrichten sind nach den verschiedenen Queue-Gruppen geordnet: zu jeder Gruppe gehört ein  Monitorbjekt mit dem Namen <Gruppenname> Inbound Queues

Blocked Queues: Client <Nummer>
(<techn.Name Queue-Gruppe>_MSC_<Nr.>)

Protokollnachrichten zu den Queues einer Anwendung, geordnet nach den verschiedenen Mandanten; die Protokollnachrichten enthalten die Fehlermeldungen, die beim qRFC-Aufruf zurückgegeben werden.

Folgende Status werden dabei sofort als „blockierend“ erkannt:

·        CPICERROR (bei Inbound/Outbound, Fehlertext verfügbar)

·        SYSFAIL (bei Inbound/Outbound, Fehlertext verfügbar)

·        STOP (bei Inbound/Outbound, kein Fehlertext)

·        ANORETRY (bei Inbound/Outbound, Fehlertext verfügbar)

·        WAITSTOP (bei Inbound/Outbound, Fehlertext verfügbar)

·        ARETRY (bei Inbound/Outbound, Fehlertext verfügbar)

·        RETRY (bei Inbound immer, bei Outbound ab qRFC-Version 6.10.040, Fehlertext verfügbar)

·        SYSLOAD (bei Outbound, bis qRFC-Version 6.10.033, kein Fehlertext)

Folgende Status werden als „blockierend“ erkannt, wenn sie länger als 30 Minuten unverändert sind:

·        READY (bei Inbound/Outbound, kein Fehlertext)

·        RUNNING (bei Inbound/Outbound, kein Fehlertext)

·        WAITUPDA (bei Outbound, kein Fehlertext)

·        EXECUTED (bei Inbound/Outbound, kein Fehlertext)

Hinweis

Information zu den möglichen Status finden Sie unter Anhang.

Queues not processed: Age Alerts
(<techn.Name Queue-Gruppe>_Age_Log)

Protokollnachrichten zu den Queues einer Anwendung; die Queues stehen länger still als der zugehörige Schwellenwert (standardmäßig sieben Tage)

QIN Schedulers: Errors
(CCMS_qRFC_QIN_Scheduler_Object)

Monitorobjekt, das Informationen zum Status des QIN-Scheduler enthält; der QIN-Scheduler regelt die Abarbeitung eingehender tRFC- und qRFC-Aufrufe innerhalb eines Mandanten (siehe SAP-Hinweis 369007)

QOUT Schedulers: Errors
(CCMS_qRFC_QOUT_Scheduler_Object)

Monitorobjekt, das Informationen zum Status des QOUT-Scheduler enthält; der QOUT-Scheduler begrenzt die maximale Anzahl paralleler tRFC- und qRFC-Verbindungen zu einer RFC-Destination (siehe SAP-Hinweis 400330)

QIN Scheduler Error: All Clients
(CCMS_qRFC_QIN_Sched_Log)

Protokollnachrichten mit Fehlermeldungen zu den QIN-Schedulers aller Mandanten; ein Alert hier zeigt an, dass das System einen eingehenden RFC-Aufruf wegen eines Kommunikations- oder Ausführungsfehlers nicht bearbeiten konnte

QIN Unregistered Queues: All Clients:
(CCMS_qRFC_QIN_Unreg_Log)

Protokollnachrichten mit Fehlermeldungen zu den QIN-Schedulers aller Mandanten; ein Alert hier zeigt an, dass der Scheduler auf einen RFC-Aufruf mit einer nicht registrierten Queue gestoßen ist

QOUT Scheduler Error: All Clients
(CCMS_qRFC_QOUT_Sched_Log)

Protokollnachrichten von Kommunikations- und Systemfehlern zu den QOUT-Schedulers aller Mandanten

Aktivitäten

Um den Monitor zu starten, gehen Sie wie folgt vor:

...

       1.      Starten Sie den Alert-Monitor über Transaktion RZ20, oder wählen Sie CCMS ® Steuerung/Monitoring ® Alert-Monitor.

       2.      Expandieren Sie im Bild CCMS-Monitorsammlungen die Sammlung SAP CCMS Monitor Templates.

       3.      Starten Sie in der Monitorliste den Monitor Communications mit Doppelklick.

       4.      Expandieren sie den Teilbaum Transactional RFC and Queued RFC.

Vorgehen bei Alertauslösung

MTE

Vorgehen

ARFCSSTATE: Outbound tRFC Calls

Allen MTEs dieses Monitorobjekts ist als Analysemethode die Transaktion Transaktionaler RFC (SM58) zugeordnet. Dieses Werkzeug zeigt eine Liste aller transaktionalen RFCs an, die nicht erfolgreich abgeschlossen werden konnten oder die als Hintergrund-Jobs eingeplant werden mussten.

Calls w/Communication Errors - CPICERR

Häufig treten in diesem Attribut Fehler auf, wenn eine Instanz zur Wartung heruntergefahren wird. Wenn die Instanz wieder zur Verfügung steht, werden die Aufrufe automatisch abgearbeitet.

Falls dies nicht der Fall ist, sollten Sie die RFC-Verbindung durch die Transaktion Anzeige und Pflege von RFC-Destinationen (SM59) prüfen.

Calls w/ Execution Errors - SYSFAIL

Fehler in der Ausführung der RFC-Aufrufe werden häufig durch Fehler in den Programmen hervorgerufen. Diese Fehler müssen also meist individuell bearbeitet werden.

Calls w/o Server Resources - SYSLOAD

RFC-Aufrufe im Status SYSLOAD werden automatisch in einem Job eingeplant. Weitere Informationen zum Status SYSLOAD finden Sie im SAP-Hinweis 319860.

ARFCSSTATE: Inbound tRFC/qRFC Calls

Sie finden Informationen zu möglichen Status und Problemen zur Tabelle ARFCRSTATE in den SAP-Hinweisen 378903 und 366869.

Outbound Queues
Inbound Queues

Starten Sie die zugeordnete Analysemethode. Dies ist für die MTEs dieser Monitorobjekte die Transaktion SMQ1 bzw. SMQ2 (qRFC-Monitor).

QIN Schedulers: Errors
QOUT Schedulers: Errors

Starten Sie die zugeordnete Analysemethode. Dies ist für die MTEs dieser Monitorobjekte die Transaktion SMQR bzw. SMQS (QIN-/QOUT-Scheduler).

Siehe auch:

Überwachung von qRFC- und tRFC-Aufrufen

Ende des Inhaltsbereichs