Fehlerbehebung bei der SAP BTP-Edition des ABAP SDK for Google Cloud

Um Probleme mit der SAP BTP-Edition des ABAP SDK for Google Cloud zu beheben, müssen Sie zuerst herausfinden, woher das Problem kommen könnte. Das Problem kann mit Ihrer Infrastruktur, der SAP BTP-Umgebung und den von Ihnen verwendeten Tools oder dem ABAP SDK für Google Cloud selbst zusammenhängen.

Wenn Ihre Analyse auf ein Problem mit dem ABAP SDK for Google Cloud verweist, beheben Sie Probleme mithilfe von SAP-Anwendungslogs und Fehlermeldungen.

Wenn Sie der Meinung sind, dass das Problem in Ihrer SAP-Umgebung oder in Ihren Tools liegt, wenden Sie sich an SAP, um Unterstützung zu erhalten.

Voraussetzungen überprüfen

Prüfen Sie, ob alle Voraussetzungen für die Installation der SAP BTP-Version des ABAP SDK for Google Cloud erfüllt sind. Informationen zu den Voraussetzungen für die SDK-Installation finden Sie unter Vorbereitung.

SAP-Supportdokumentation lesen

Wenn Sie ein SAP-Nutzerkonto haben, finden Sie die Lösung vieler SAP-Softwareprobleme in den SAP-Hinweisen und Artikeln aus der Wissensdatenbank für Adaptive Server Enterprise, die im SAP ONE-Support Launchpad verfügbar sind.

Logs ansehen

Wenn das Logging konfiguriert ist, protokolliert die SAP BTP-Edition des ABAP SDK for Google Cloud Fehlermeldungen in SAP-Anwendungslogs. Weitere Informationen zum Logging finden Sie unter Logging konfigurieren.

Führen Sie die folgenden Schritte aus, um Logeinträge aufzurufen:

  1. Rufen Sie das SAP Fiori Launchpad des BTP-ABAP-Systems auf, auf dem das ABAP SDK for Google Cloud installiert ist.
  2. Öffnen Sie die App Google SDK: Application Logs Display.
  3. Geben Sie die Logfilter entsprechend an:

    • Von: Wählen Sie ein Startdatum aus, nach dem die Logs gefiltert werden sollen.
    • Bis: Wählen Sie ein Enddatum aus, bis zu dem Logs gefiltert werden sollen.
    • Log-Objekte: Wählen Sie ein Log-Objekt aus, für das Logs abgerufen werden müssen.
    • Log-Unterobjekt: Wählen Sie ein Log-Unterobjekt aus, für das Logs abgerufen werden müssen.
    • Dienstname: Wählen Sie die API-Dienstnamen aus, für die Logs abgerufen werden sollen.
  4. Klicken Sie auf Los. Die Liste der Header der Anwendungslogs wird angezeigt.

    Header von Anwendungslogs

  5. Klicken Sie auf einen Log-Header, um detaillierte Logs auf Elementebene aufzurufen. Die Logmeldungen werden mit Schweregrad und Zeitstempel angezeigt.

    Detaillierte Protokolle auf Artikelebene

    Ein Logeintrag besteht normalerweise aus den folgenden beiden Einträgen:

    • Eingang: enthält Informationen zum Codestandort, an dem genau der Fehler aufgetreten ist. Für die Fehlerbehebung können Sie diesen Codespeicherort beim Debugging als Haltepunkt verwenden.
    • Fehlermeldung: enthält Informationen zu einem Fehler, der beim Ausführen eines Vorgangs aufgetreten ist.

Debugging

Wenn Sie die erforderliche Autorisierung haben, können die API-Clientklassen debuggen.

Verwenden Sie eine der folgenden Optionen, um die API-Clientklassen zu debuggen:

  • Fügen Sie dem Konstruktor der Klasse /GOOG/CL_HTTP_CLIENT einen Haltepunkt hinzu und führen Sie dann das Programm aus.

  • Fügen Sie der von Ihnen verwendeten Methode einen Haltepunkt hinzu und führen Sie dann das Programm aus.

HTTP-Trace

Während der Fehlerbehebung können Sie den HTTP-Aufruf-Trace in SAP Monitor-Netzwerkverbindungen prüfen. Weitere Informationen finden Sie auf der SAP-Seite Ausgehende Systemkommunikation im Allgemeinen überwachen.

Häufige operative Probleme

Wenn Sie Google Cloud APIs über die öffentlichen Client-Stub-Methoden nutzen, können Entwickler auf Fehler und Ausnahmen stoßen. Diese Fehler und Ausnahmen werden grob in zwei Kategorien unterteilt:

In diesem Abschnitt werden Fehler und Ausnahmen beschrieben, die vom SDK ausgelöst werden.

/GOOG/MSG: 503 - HTTP Communication Failure exception occurred during the request sending

Problem: Die HTTP-Anfrage an eine API-Methode ist fehlgeschlagen.

Ursache: Dieses Problem kann durch Verbindungsprobleme verursacht werden.

Lösung: Aktivieren Sie im Google Cloud-Projekt, von dem aus Sie auf die Google Cloud APIs zugreifen möchten, die Ziel-APIs. Informationen zum Aktivieren von Google Cloud APIs finden Sie unter APIs aktivieren.

/GOOG/MSG:400 - Error generating STS token:Bad Request-invalid_request-Invalid value for " audience". This value should be the full resource name of the Identity Provider. See https://cloud.google.com/iam/docs/reference/sts/rest/v1/TopLevel/token for the list of possible formats.

Problem: Sie können das STS-Token (Security Token Service) nicht generieren.

Ursache: Wenn Sie sich bei Google Cloud mit Tokens über Identitätsföderation von Arbeitslasten oder den in Secret Manager gespeicherten API-Schlüssel authentifizieren, fehlen Ihrer Authentifizierungseinrichtung die erforderlichen Konfigurationen.

Lösung: Prüfen und aktualisieren Sie die folgenden Details:

  • Aktualisieren Sie in der Anwendung Kommunikationsregelung die ID der Identitätsföderation von Arbeitslasten und die Anbieter-ID der Identitätsföderation von Arbeitslasten.

  • Aktualisieren Sie in der Anwendung Google SDK: Hauptkonfiguration für Ihre Kommunikationszuordnung die Google Cloud-Projekt-ID und die Google Cloud-Projektnummer für den Clientschlüssel.

Weitere Informationen finden Sie unter ABAP SDK for Google Cloud für die Verwendung von Identitätsföderation von Arbeitslasten konfigurieren.

/GOOG/MSG:400 - Error generating STS token:Bad Request-invalid_scope-Invalid scope provided in the request

Problem: Sie können sich nicht bei Google Cloud authentifizieren.

Ursache: Wenn Sie sich bei Google Cloud mit Tokens über Identitätsföderation von Arbeitslasten oder den in Secret Manager gespeicherten API-Schlüssel authentifizieren, ist der Google Cloud-Bereich: ungültig.

Lösung: Achten Sie in der App Google SDK: Hauptkonfiguration für Ihre Kommunikationskarte darauf, dass der Google Cloud-Bereich https://www.googleapis.com/auth/cloud-platform ist.

/GOOG/MSG:461 - API Key not valid. Please pass a valid API Key

Problem: Sie können sich nicht mit der API-Schlüssel-basierten Authentifizierung bei Google Cloud authentifizieren.

Ursache: In der Kommunikationsvereinbarung wurde ein ungültiger API-Schlüssel angegeben.

Lösung: Behalten Sie einen gültigen Secret-Namen und eine gültige Secret-Version in der zugehörigen Kommunikationsvereinbarung bei, um dieses Problem zu beheben. Achten Sie außerdem darauf, dass im Secret ein gültiger API-Schlüssel konfiguriert ist.

Weitere Informationen finden Sie unter ABAP SDK for Google Cloud für die Verwendung des im Secret Manager gespeicherten API-Schlüssels konfigurieren.

/GOOG/MSG: 461 - Communication Map entry for authentication service not maintained

Problem: Das SDK kann die Kommunikationsartefakte für die Authentifizierung nicht ermitteln.

Ursache: Für den Authentifizierungsdienst wird keine Kommunikationszuordnung verwaltet.

Lösung: Erstellen Sie in der App Google SDK: Hauptkonfiguration eine Kommunikationskarte und verwenden Sie den richtigen Authentifizierungstyp für den Authentifizierungsmethode, die Sie verwenden.

Informationen zum Erstellen einer Kommunikationszuordnung finden Sie in der Anleitung für Authentifizierungsmethoden unter Authentifizierung für die SAP BTP Edition des ABAP SDK for Google Cloud konfigurieren.

/GOOG/MSG: 461 - Communication Scenario not valid for default Google Authentication

Problem: Das SDK kann die Kommunikationsvereinbarung für die Authentifizierung nicht ermitteln.

Ursache: Der für den Authentifizierungsdienst verwaltete Eintrag ist ungültig.

Lösung: Achten Sie darauf, dass für den Eintrag der Kommunikationskarte in der App Google SDK: Hauptkonfiguration die Kommunikationsanordnung mit dem richtigen Kommunikationsszenario und Kommunikationssystem konfiguriert ist.

Informationen zum Aktualisieren einer Kommunikationsvereinbarung finden Sie in der Anleitung für Authentifizierungsmethoden unter Authentifizierung für die SAP BTP-Edition des ABAP SDK for Google Cloud einrichten.

/GOOG/MSG:400 - Error generating IDP token: Not found

Problem: Sie können das Identitätsanbieter-Token nicht über den XSUAA-Dienst generieren.

Ursache: Wenn Sie sich bei Google Cloud mit Tokens über die Identitätsföderation von Arbeitslasten oder den in Secret Manager gespeicherten API-Schlüssel authentifizieren, ist entweder die Hostname-URL für den XSUAA-Dienst oder der Pfadwert im Kommunikationssystem ungültig.

Lösung: Prüfen und aktualisieren Sie die folgenden Details:

  • Behalten Sie im Kommunikationssystem für den XSUAA-Dienst oder im BTP-Ziel, das im Kommunikationssystem verwendet wird, die richtige Hostname-URL bei.
  • Behalten Sie in der Kommunikationsanordnung einen gültigen Pfad.

/GOOG/MSG:400 - Error generating STS token: Not found

Problem: Sie können das für die Authentifizierung erforderliche Security Token Service-Token nicht generieren.

Ursache: Wenn Sie sich bei Google Cloud mit Tokens über die Identitätsföderation von Arbeitslasten oder den in Secret Manager gespeicherten API-Schlüssel authentifizieren und eine Kommunikationsvereinbarung für den STS-Dienst verwenden ist das mit dem STS-Dienst verknüpfte Kommunikationssystem ungültig.

Lösung: Prüfen und aktualisieren Sie die folgenden Details:

  • Achten Sie im Kommunikationssystem für den STS-Dienst oder im BTP-Ziel, das im Kommunikationssystem verwendet wird, auf die richtige Hostname-URL.
  • Behalten Sie in der Kommunikationsanordnung einen gültigen Pfad.

/GOOG/MSG:400 - Error generating IAM token: Not found

Problem: Sie können das für die Authentifizierung erforderliche IAM-Token nicht generieren.

Ursache: Wenn Sie sich bei Google Cloud mit Tokens über die Identitätsföderation von Arbeitslasten oder den in Secret Manager gespeicherten API-Schlüssel authentifizieren und eine Kommunikationsvereinbarung für den IAM-Dienst verwenden ist die Kommunikationszuordnung und das Kommunikationssystem, die mit dem IAM-Dienst verknüpft sind, ungültig.

Lösung: Prüfen und aktualisieren Sie die folgenden Details:

  • Achten Sie im Kommunikationssystem für den IAM-Dienst oder im BTP-Ziel, das im Kommunikationssystem verwendet wird, auf die richtige Hostname-URL.
  • Behalten Sie in der Kommunikationsanordnung einen gültigen Pfad.

Fehler bei der Konfigurationsprüfung

G001 | Check communication scenario

Ursache: Das in der Kommunikationszuordnung konfigurierte Kommunikationsszenario wird mit der Standardautorisierungsklasse /GOOG/CL_AUTH_GOOGLE nicht unterstützt.

Lösung: Wenn Sie /GOOG/CL_AUTH_GOOGLE als Autorisierungsklasse verwenden, achten Sie darauf, dass in Ihrer Kommunikationszuordnung je nach Authentifizierungsmethode eines der folgenden Kommunikationsszenarios angegeben ist.

Kommunikationsszenario Authentifizierung
/GOOG/COM_SDK_WIF Workload Identity-Föderation
/GOOG/COM_SDK_APIKSM API-Schlüssel mit Secret Manager

Informationen zum Aktualisieren einer Kommunikationszuordnung finden Sie in der Anleitung für Authentifizierungsmethoden unter Authentifizierung für die SAP BTP Edition des ABAP SDK for Google Cloud einrichten.

W001 | Check Comm. arrangement for WIF

Ursache: Die Kommunikationsanordnung kann nicht mit dem Kommunikationsszenario und dem Kommunikationssystem identifiziert werden, die in der App Google SDK: Hauptkonfiguration angegeben sind.

Lösung: Achten Sie darauf, dass die Kommunikationskonfiguration für den Authentifizierungsdienst ein gültiges Kommunikationsszenario und ein gültiges Kommunikationssystem verwendet.

Weitere Informationen finden Sie unter ABAP SDK for Google Cloud für die Verwendung von Identitätsföderation von Arbeitslasten konfigurieren.

W002 | Fetch XSUAA token

Ursache: Der Abruf des XSUAA-Tokens ist fehlgeschlagen.

Lösung: Achten Sie darauf, dass die XSUAA-Dienstinstanz ordnungsgemäß konfiguriert ist.

Weitere Informationen finden Sie unter XSUAA-Dienstinstanz (Authorization and Trust) erstellen.

W003 | Fetch WIF Pool ID

Ursache: Die Pool-ID des Identitätsföderation von Arbeitslasten ist in der Kommunikationsvereinbarung nicht vorhanden.

Lösung: Achten Sie darauf, dass in der für den Authentifizierungsdienst verwendeten Kommunikationsart das Kommunikationsszenario /GOOG/COM_SDK_WIF verwendet wird und eine gültige Pool-ID der Identitätsföderation von Arbeitslasten angegeben ist.

Weitere Informationen finden Sie unter ABAP SDK for Google Cloud für die Verwendung von Identitätsföderation von Arbeitslasten konfigurieren.

W004 | Fetch WIF Provider ID

Ursache: Die Anbieter-ID der Identitätsföderation von Arbeitslasten ist nicht in der Kommunikationsvereinbarung vorhanden.

Lösung: Achten Sie darauf, dass in der für den Authentifizierungsdienst verwendeten Kommunikationsvereinbarung das Kommunikationsszenario /GOOG/COM_SDK_WIF verwendet und eine gültige Anbieter-ID der Identitätsföderation von Arbeitslasten angegeben ist.

Weitere Informationen finden Sie unter ABAP SDK for Google Cloud für die Verwendung von Identitätsföderation von Arbeitslasten konfigurieren.

W005 | Fetch STS token

Ursache: Der Abruf des STS-Tokens ist fehlgeschlagen.

Lösung: So beheben Sie das Problem:

W006 | Fetch IAM credential token

Ursache: Der Abruf des IAM-Tokens ist von der IAM Credentials API fehlgeschlagen.

Lösung: So beheben Sie das Problem:

  • Prüfen Sie in der Kommunikationszuordnung, ob die Google Cloud-Projektnummer korrekt verwaltet wird. Weitere Informationen finden Sie unter ABAP SDK for Google Cloud für die Verwendung von Identitätsföderation von Arbeitslasten konfigurieren.
  • Wenn in der Kommunikationszuordnung ein Eintrag für den iamcredentials:v1-Dienst verwaltet wird, achten Sie darauf, dass die verwaltete Kommunikationsvereinbarung gültig und im System verfügbar ist und dasselbe Kommunikationsszenario verwendet und Kommunikationssystem, wie in der SDK-Konfigurations-App angegeben.

V001 | Check Comm. Arr. for API Key(SM)

Ursache: Die Kommunikationsvereinbarung kann nicht mit dem Kommunikationsszenario und dem Kommunikationssystem identifiziert werden, die in der App Google SDK: Hauptkonfiguration angegeben sind.

Lösung: Achten Sie darauf, dass die für den Authentifizierungsdienst verwaltete Kommunikationskonfiguration gültig und im System verfügbar ist und dasselbe Kommunikationsszenario und dasselbe Kommunikationssystem wie in der SDK-Konfigurations-App verwendet wird.

Weitere Informationen finden Sie unter ABAP SDK for Google Cloud für die Verwendung des API-Schlüssels aus Secret Manager konfigurieren.

V002 | Fetch Secret Name

Ursache: Der Secret-Name ist in der Kommunikationsanordnung nicht vorhanden.

Lösung: Achten Sie darauf, dass in der für den Authentifizierungsdienst verwendeten Kommunikationsvereinbarung das Kommunikationsszenario /GOOG/COM_SDK_APIKSM verwendet und ein gültiges Secret angegeben wird.

Weitere Informationen finden Sie unter ABAP SDK for Google Cloud für die Verwendung des API-Schlüssels aus Secret Manager konfigurieren.

V003 | Fetch Secret Version

Ursache: Das Attribut Secret-Version enthält keinen gültigen Wert in der Kommunikationsanordnung.

Lösung: Achten Sie darauf, dass in der für den Authentifizierungsdienst verwendeten Kommunikationsvereinbarung das Kommunikationsszenario /GOOG/COM_SDK_APIKSM verwendet und eine gültige Secret-Version angegeben wird.

Weitere Informationen finden Sie unter ABAP SDK for Google Cloud für die Verwendung des API-Schlüssels aus Secret Manager konfigurieren.

V004 | Fetch Token from Secret Manager

Ursache: Die Secret Manager API konnte das Secret, das den API-Schlüssel enthält, nicht abrufen.

Lösung: So beheben Sie das Problem:

Von Google Cloud APIs zurückgegebene Fehlermeldungen

Jeder API-Client-Stub hat die Exportparameter, die den API-Rückgabecode und die Fehlermeldungen bereitstellen.

  • ev_ret_code enthält die HTTP-Statuscodes. Bei einem Fehler, der von einer API zurückgegeben wird, enthält dieser Parameter einen Wert 4XX.

  • ev_err_resp enthält die von einer API zurückgegebene Fehlerkategorie und Fehlermeldung.

Das folgende Beispiel zeigt einen von der API zurückgegebenen Fehler, wenn Sie ein neues Pub/Sub-Thema mit einem bereits vorhandenen Themennamen erstellen.

  • ERROR_TEXT: Konflikt
  • ERROR_DESCRIPTION: Ressource ist bereits im Projekt vorhanden (resource=SAMPLE_TOPIC_01)

Für Fehler, die von APIs zurückgegeben werden, empfehlen wir Ihnen, die öffentliche Dokumentation der entsprechenden APIs zu lesen.

Support von der Community

In den Cloud-Foren können Sie Ihre Fragen stellen und über die ABAP SDK für Google Cloud mit der Community sprechen.

Support anfordern

Wenn Sie Hilfe bei der Behebung von Problemen mit der SAP BTP-Version des ABAP SDK for Google Cloud benötigen, erfassen Sie alle verfügbaren Diagnoseinformationen und wenden Sie sich an Cloud Customer Care.

Informationen zur Kontaktaufnahme mit Cloud Customer Care finden Sie unter Support für SAP in Google Cloud.