Ansicht
Dokumentation

SEC_TRACE_ANALYZER - HTTP-Request-Tracer und -Recorder

SEC_TRACE_ANALYZER - HTTP-Request-Tracer und -Recorder

ROGBILLS - Synchronize billing plans   CL_GUI_FRONTEND_SERVICES - Frontend Services  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Verwendung

Mit diesem Report können Sie bequem Tracing für HTTP-Kommunikationen durchführen. Der Report führt Tracing für den ICF-Service und den Benutzer durch, von dem der Service aufgerufen wurde. Im Gegensatz zum Tracing in der Transaktion SM50 brauchen Sie die Workprozessnummer, unter der Ihr Szenario gelaufen ist, nicht zu kennen.

Außerdem ermöglicht es Ihnen der Report, alle von Ihnen benötigten Tracing-Funktionen an einem zentralen Ort verfügbar zu machen.

Der Report führt keine neue Tracing-Umgebung ein. Vom Report werden nur vorhandene Tracing-Werkzeuge, das heißt, Kernel-Trace, ICM-Trace und ICF-Recorder, wiederverwendet. Der Report kombiniert die Schritte, die in den folgenden SAP-Hinweisen beschrieben werden.

  • 507994 Erzeugung von Plug-In-Trace-Dateien zur Fehleranalyse
  • 724804 Einsatz des ICF-Recorders zur Fehleranalyse
  • 495911 Trace-Analyse für Anmeldeprobleme
  • 1370207 Anlegen von Workprozess-Trace-Dateien

Integration

Dieses Trace kann nur auf dem aktuellen Anwendungsserver ausgeführt werden. Die HTTP-Requests müssen auf dem aktuellen Anwendungsserver ausgeführt werden.

Hinweis: Für Fehlerantworten werden manchmal keine Traces ausgeführt. Beispiel: ICM leitete den HTTP-Client um, aber der Client sendete keine Authentifizierungs-Credentials an die neue URL. ICF sendet einen Returncode HTTP 401 sowie einen Fehler mit dem Hinweis auf fehlende Authentifizierungsdaten.

Sie können den Request oder die Response nur im ICM-Trace (siehe SAP-Hinweis 1318906 oder 507994) oder im ICF-Recorder (siehe SAP-Hinweis 724804) einsehen.

Voraussetzungen

Funktionsumfang

Selektion

Standardvarianten

Ausgabe

Aktivitäten

Trace einrichten

  1. Konfigurieren Sie die grundlegenden Optionen.
Legen Sie den ICF-Service, den Trace-Level und die Zeitüberschreitung fest. Geben Sie das Zielverzeichnis für Downloads an.

Einstellung Beschreibung
ICF-Service Wählen Sie den ICF-Service, für den Sie Traces aufzeichnen wollen. Wenn Sie /sap/bc wählen, werden für alle Requests, die an diese URL und alle Services in der Servicehistorie gesendet wurden, Traces ausgeführt. Platzhalter wie /sap/bc/* werden nicht unterstützt und verhindern das Tracing.
Level Geben Sie einen Wert ein, um festzulegen, wie ausführlich (verbose) die Traces sind.
1 = Nur Fehler
2 = Trace-Ausführungspfade und einige Details
3 = ausführlich, enthält auch Meldungen
SAP empfiehlt Ihnen, den Wert 2 zu verwenden.
Zeitüberschreitung Legen Sie fest, in wie vielen Stunden, Minuten und Sekunden Ihre Trace-Response aufzeichnen soll, bis das Trace automatisch deaktiviert wird.
Zielverzeichnis für Downloads Geben Sie einen Pfad für das Herunterladen der Trace-Datei ein.

  1. Geben Sie an, ob Sie das Trace auf bestimmte Benutzer und Mandanten einschränken wollen.
SAP empfiehlt Ihnen, die Größe der Traces zu begrenzen, indem Sie möglichst präzise Angaben machen. Trace-spezifische Benutzer auf bestimmten Clients für spezifische ICF-Services.

Einstellung Beschreibung
Anmelde-Trace (hat HTTP 401 erhalten) Wählen Sie diese Option für das Tracing von Authentifizierungsproblemen, die in der Regel durch den Returncode HTTP 401 angezeigt werden. Der Dummy-Benutzer <SYSTEM> wird zum Lesen der Traces aller Sessions verwendet, die nicht authentifiziert wurden, z.B. aufgrund eines fehlgeschlagenen Authentifizierungsversuchs.
Mandantenabhängig Wählen Sie diese Option, um die Aufzeichnung der Trace-Response-HTTP-Request/Response ausschließlich im aktuellen Mandanten zu aktivieren.
Lassen Sie diese Option leer, um das Tracing für den gesamten Anwendungsserver und für alle Mandanten im Anwendungsserver zu aktivieren.
Mandantenunabhängiges Tracing (bei unmarkierter Option) zeichnet immer die Requests von allen Benutzern für den angegebenen ICF-Service auf. Wenn Sie versuchen, die Trace-Datei zu lesen, geben Sie einen bestimmten Benutzer an, dessen Traces Sie lesen wollen.
Benutzer Diese Option steht nur für mandantenabhängiges Tracing zur Verfügung.
Wählen Sie einen Benutzer aus, dessen Traces Sie aufzeichnen wollen. Geben Sie <ALLE> ein, um die Traces aller Benutzer einschließlich nicht authentifizierter Sessions anzuzeigen.

  1. Legen Sie fest, ob Sie HTTP-Requests und -Responses aufzeichnen oder den ICM-Trace-Level setzen wollen.

Einstellung Beschreibung
Requests aufzeichnen Wählen Sie diese Option für das Aktivieren des ICF-Recorders, um die HTTP-Requests und -Responses aufzuzeichnen. Der Recorder wird aktiviert, wenn das Trace aktiviert ist.
Zusammen mit der Option Anmelde-Trace wird der Anmeldevorgang ebenfalls aufgezeichnet. Sie können im ICF-Recorder die Anmelde-Returncodes einsehen.
In Kombination sind diese Option sehr hilfreich bei der Analyse unterschiedlichster Anmeldeprobleme. Es kann vorkommen, dass Sie eine HTTP-401-Response erhalten, aber ein Trace wurde nicht geschrieben, es wurden beispielsweise keine Berechtigungsdaten gesendet. Die Verwendung des ICF-Recorders ist die einzige Möglichkeit, ein derartiges Problem zu analysieren.
Um die aufgezeichneten Requests einzusehen, wählen Sie ICF-Aufzeichnungen anzeigen.
ICMAN-Trace-Level setzen Setzt auch das Trace-Level von ICM. Diese Funktion entspricht der in Transaktion SMICM im Menü unter Springen > Trace-Level.

  1. Legen Sie fest, ob Sie die Trace-Dateien zurücksetzen wollen.
Setzen Sie die Trace-Dateien nur zurück, wenn Sie sicher sind, dass niemand anderes im System zur gleichen Zeit die Traces auszuwerten versucht. Das Zurücksetzen der Trace-Dateien löscht die Trace-Daten, die andere Benutzer unter Umständen sammeln.
Sie löschen bei Aktivierung eines neuen Trace die Trace-Historie, indem Sie die Option Trace-Dateien zurücksetzen wählen.

Traces sammeln

  1. Starten Sie den Report SEC_TRACE_ANALYZER.
  2. Wählen Sie Aktivieren.
  3. Wiederholen Sie die Aktion, die zu dem Problem geführt hat, das Sie durch die Fehlersuche lösen wollen.
  4. Wählen Sie Deaktivieren.
  5. Überprüfen Sie die Ergebnisse.
Wählen Sie Anzeigen, um die Ergebnisse im System anzuzeigen oder wählen Sie Herunterladen, um die Dateien lokal anzuzeigen.

Beispiel

Nachfolgend ist ein Beispiel für die Ausführung eines Tracing für Requests zum OAuth-2.0-Tokenendpunkt (Service /sap/bc/sec/oauth2/token), wenn Sie einen HTTP-401-Response-Code erhalten.

  1. Starten Sie den Report SEC_TRACE_ANALYZER und wählen Sie die Variante SAP&OAUTH2 (im Menü: Springen > Varianten > SAP&OAUTH2).
  2. Wählen Sie Aktivieren.
Diese Variante aktiviert das Tracing für fehlgeschlagene Authentifizierungsanfragen am Tokenendpunkt.
  1. Führen Sie Ihr Szenario erneut aus und stellen Sie sicher, einen HTTP-401-Response-Code zu erhalten.
  2. Wählen Sie Deaktivieren.
  3. Wählen Sie Einblenden.
OAuth-Fehler werden rot angezeigt. Sie zeigen die Kontextinformationen für einen Fehler an, indem Sie auf den Fehler klicken und F8 wählen.
Um die Trace-Datei herunterzuladen, wählen Sie die Drucktaste Herunterladen.

Das Beispiel des Fehler-Trace zeigt Folgendes:

  • Der HTTP-Client hat versucht, sich mit einem X.509 SSL-Client-Zertifikat zu authentifizieren.
  • Die Authentifizierung ist fehlgeschlagen, weil kein SAP-Systembenutzer für das angegebene Zertifikat gefunden wurde.

Schritt von Benutzer SAPSYS, Session 1 , Schritt 1

N  dy_signi_ext: X.509-Client-Zertifikatanmeldung mit Ticketanforderung

N  CertGetInfo: Inhabername >CN=OA2_TEST<

N  CertGetInfo: Ausstellername >CN=OA2_TEST<

N  Lookup USREXTID für Zertifikatzuordnungsinformationen

N  GetUsrExtId: Suche nach <DN, "CN=OA2_TEST"> in Mandant 000 für Benutzer ""

N  GetUsrExtId: 0 übereinstimmende USREXTID-Einträge gefunden

N  dy_signi_ext: X.509-Zuordnung zu Benutzername ist fehlgeschlagen

N  ==> krn_Base64_Encode()

N  <== krn_Base64_Encode()==0 (SSF_KRN_OK)

N  RSEC: --> "rsecxdb__read_and_migrate" [rsecxdb.c 1800]

N  RSEC: --> "rsecxdb__ReadEncryptedContents" [rsecxdbi.c 326]

N  Call to db_xrtab == 0.

N  RSEC: <-- "rsecxdb__ReadEncryptedContents" [rsecxdbi.c 435]

N  RSEC: --> "RSecAcGetRights" [rsecxacl.c 459]

N  RSEC: <-- "RSecAcGetRights" [rsecxacl.c 574]

N  RSEC: --> "rsecxdb__GetKeyLegacy" [rsecxdb.c 855]

N  RSEC: --> "rsecxdb__GetKeyLegacy" [rsecxdb.c 403]

N  RSEC: --> "rsecxdb__getGlobalKeyFromLegacyKeyfile" [rsecxdbi.c 990]

N  RSEC: <-- "rsecxdb__getGlobalKeyFromLegacyKeyfile" [rsecxdbi.c 1086]

N  RSEC: --> "rsecxdb__GetKey" [rsecxdb.c 3266]

N  RSEC: <-- "rsecxdb__GetKey" [rsecxdb.c 3408]

N  RSEC: <-- "rsecxdb__GetKeyLegacy" [rsecxdb.c 502]

N  Sicherer Speicher-Datensatzversion 3

N  RSEC: <-- "rsecxdb__read_and_migrate" [rsecxdb.c 2561]

N  OAUTH2: Tracer wurde gestartet. TL: 2

N  OAUTH2: CL_OAUTH2_ICF_SYS_LOGIN->WRITE_RESPONSE wird eingegeben:

N  OAUTH2:  IV_PAGE: onLogin

N  OAUTH2: CL_OAUTH2_ICF_SYS_LOGIN->HTM_LOGIN wird eingegeben

N  OAUTH2: CL_OAUTH2_S_TOKEN_ENDPOINT=>CERTIFICATE_AVAILABLE wird eingegeben

N  OAUTH2: CL_OAUTH2_S_TOKEN_ENDPOINT=>CERTIFICATE_AVAILABLE wird beendet

N  OAUTH2: Zertifikat verfügbar?: X

N  OAUTH2: Grund für Anmeldefehler wird ermittelt

N  OAUTH2:  Authentifizierungsmethode: 7

N  OAUTH2:  Zertifikat verfügbar?: X

N  OAUTH2: Fehler! CX_OAUTH2_EXCEPTION ausgegeben, Zeit: 20120625 173145

N  OAUTH2: Fehlertext: OAuth-2.0-Client-Authentifizierung fehlgeschlagen. Die bereitgestellten OAuth-2.0-Client-Credentials sind nicht gültig.

N  OAUTH2: HTTP-Statuscode: 401

N  OAUTH2: error_description: OAuth-2.0-Client-Authentifizierung fehlgeschlagen. Die bereitgestellten OAuth-2.0-Client-Credentials sind nicht gültig.

N  OAUTH2: error: invalid_client

N  OAUTH2:

N  OAUTH2: Stack aufrufen: CX_OAUTH2_EXCEPTION===========CM003 67, METHOD CREATE

N  OAUTH2: CL_OAUTH2_ICF_SYS_LOGIN=======CM002 37, METHOD HTM_LOGIN

N  OAUTH2: CL_ICF_SYSTEM_LOGIN===========CM00B 76, METHOD WRITE_RESPONSE

N  OAUTH2: CL_OAUTH2_ICF_SYS_LOGIN=======CM001 17, METHOD WRITE_RESPONSE

N  OAUTH2: CL_ICF_SYSTEM_LOGIN===========CM00D 115, METHOD PROCESS_LOGIN_ERROR

N  OAUTH2: CL_ICF_SYSTEM_LOGIN===========CM006 189, METHOD ON_ICF_CALL

N  OAUTH2: CL_HTTP_SERVER_NET============CM009 267, METHOD PREPARE_OTR_DOCUMENT

N  OAUTH2: CL_HTTP_SERVER_NET============CM003 2598, METHOD AUTHENTICATION

N  OAUTH2: LHTTP_RUNTIMEU02 1120, FUNCTION HTTP_DISPATCH_REQUEST

N  OAUTH2: SAPMHTTP 13, MODULE (PBO) %_HTTP_START

N  OAUTH2:

N  OAUTH2: CL_OAUTH2_ICF_SYS_LOGIN->HTM_LOGIN wird beendet:

N  OAUTH2:  JSON-Response: { "error":"invalid_client","error_description":"OAuth-2.0-Client-Authentifizierung ist fehlgeschlagen. Die bereitgestellten OAuth-2.0-Client-Credentials sind nicht gültig.

N  N  OAUTH2: CL_OAUTH2_ICF_SYS_LOGIN->WRITE_RESPONSE wird beendet:

N  OAUTH2:  WWW-Authenticate-Header: Standardbereich="SAP NetWeaver Application Server [ALX/000]"

N  OAUTH2:  HTTP-Statuscode: 401 Keine Berechtigung

Ende des Schritts von Benutzer SAPSYS, Session 1 , Schritt 1

Fehlerbehebung

Was ist zu tun, wenn die Auswahl der Taste Einblenden eine leere Liste zurückgibt?

Eine leere Liste könnte auf einen der folgenden Gründe zurückzuführen sein:

  • Der von Ihnen eingegebene Benutzer ist inkorrekt.
Nach einer erfolgreichen Authentifizierung gibt die Eingabe des Benutzers SAPSYS/<SYSTEM> eine leere Liste zurück.
  1. Kehren Sie mit F3 zum Selektionsbild zurück und wählen Sie ICF-Aufzeichnungen anzeigen. Die Tabelle in der rechten oberen Ecke enthält alle Requests.
  2. Sie finden in der Spalte Benutzername den Namen des Benutzers, mit dem der Request ausgeführt wurde.
  3. Kehren Sie mit F3 zurück und geben Sie diesen Benutzernamen in das Feld Benutzer ein. Jetzt sollten Ihnen Traces angezeigt werden.
  • Der Fehler ist zu einem früheren Zeitpunkt bei der Bearbeitung, beispielsweise im ICM, aufgetreten.
  1. Wählen Sie F3 und wählen Sie ICM Monitor anzeigen.
  2. Durchsuchen Sie dieses Trace, um die Ursache Ihres Problems zu ermitteln. ICM-Fehler werden rot angezeigt.
Alternativ können Sie das Trace herunterladen und darin mit Strg+F nach dem HTTP-Response-Code suchen.
Wenn Sie sich nicht sicher sind, wie Sie den Fehler selbst beheben können, senden Sie die Ausgabedatei an den SAP-Support.
Sie finden im ICM Monitor häufig Probleme, die TLS betreffen. Eine Liste der häufigsten Probleme und eine Anleitung, wie sie behoben werden können, finden Sie in SAP-Hinweis 1318906.





CL_GUI_FRONTEND_SERVICES - Frontend Services   ROGBILLS - Synchronize billing plans  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 21553 Date: 20240601 Time: 044141     sap01-206 ( 200 ms )