Risoluzione dei problemi relativi alla versione SAP BTP dell'SDK ABAP per Google Cloud

Per risolvere i problemi relativi alla versione SAP BTP dell'SDK ABAP per Google Cloud, il primo passo consiste nel capire da dove può provenire. Il problema potrebbe riguardare la tua infrastruttura, l'ambiente SAP BTP e gli strumenti che stai utilizzando o l'SDK ABAP per Google Cloud.

Se la tua analisi rimanda a un problema con l'SDK ABAP per Google Cloud, risolvi i problemi utilizzando i log e i messaggi di errore delle applicazioni SAP.

Se ritieni che il problema sia all'interno dell'ambiente o degli strumenti SAP, contatta SAP per ricevere assistenza.

Controlla i prerequisiti

Assicurati che siano soddisfatti tutti i prerequisiti per l'installazione della versione SAP BTP dell'SDK ABAP per Google Cloud. Per informazioni sui prerequisiti di installazione dell'SDK, vedi Prima di iniziare.

Leggi la documentazione di assistenza SAP

Se disponi di un account utente SAP, puoi trovare la soluzione a molti problemi relativi al software SAP leggendo le note su SAP e gli articoli della knowledge base SAP disponibili in SAP ONE Support Launchpad.

visualizza i log

Quando il logging è configurato, la versione SAP BTP dell'SDK ABAP per Google Cloud registra i messaggi di errore nei log delle applicazioni SAP. Per ulteriori informazioni sul logging, consulta Configurare il logging.

Per visualizzare i messaggi di log:

  1. Accedi al Launchpad SAP Fiori del sistema BTP ABAP in cui è installato l'SDK ABAP per Google Cloud.
  2. Apri l'app Google SDK: Display log delle applicazioni.
  3. Fornisci i filtri di log appropriati:

    • Da: seleziona una data di inizio da cui filtrare i log.
    • A: seleziona una data di fine a cui filtrare i log.
    • Oggetti di log: seleziona un oggetto di log per il quale devono essere recuperati i log.
    • Oggetto secondario log: seleziona un oggetto secondario di log per il quale devono essere recuperati i log.
    • Nome servizio: seleziona i nomi dei servizi API in base ai quali recuperare i log.
  4. Fai clic su Go (Vai). Viene visualizzato l'elenco di intestazioni dei log dell'applicazione.

    Intestazioni dei log dell'applicazione

  5. Fai clic sull'intestazione di un log per accedere ai log dettagliati a livello di articolo. I messaggi di log vengono visualizzati con gravità e timestamp.

    Log dettagliati a livello di articolo

    In genere un messaggio di log è costituito dalle due voci seguenti:

    • Inserendo: fornisce informazioni sulla posizione del codice in cui si è verificato esattamente l'errore. Per la risoluzione dei problemi, puoi utilizzare questa posizione del codice come punto di interruzione durante il debug.
    • Messaggio di errore: fornisce informazioni su un errore che si è verificato durante l'esecuzione di un'operazione.

Debug

Se disponi dell'autorizzazione richiesta, puoi eseguire il debug delle classi del client API.

Per eseguire il debug delle classi del client API, utilizza una delle seguenti opzioni:

  • Aggiungi un punto di interruzione al costruttore della classe /GOOG/CL_HTTP_CLIENT, quindi esegui il programma.

  • Aggiungi un punto di interruzione al metodo che stai utilizzando ed esegui il programma.

Traccia HTTP

Durante la risoluzione degli errori, puoi controllare la traccia della chiamata HTTP nelle connessioni in uscita del sistema di SAP Monitor System. Per ulteriori informazioni, consulta la pagina SAP Monitoring System Outbound Communication in General.

Problemi operativi comuni

Durante l'utilizzo delle API Google Cloud con i metodi pubblici dello stub del client, gli sviluppatori potrebbero riscontrare errori ed eccezioni. Questi errori e queste eccezioni sono generalmente classificati in due categorie:

Questa sezione riguarda gli errori e le eccezioni attivati dall'SDK.

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

Problema: la richiesta HTTP a un metodo API non è riuscita.

Causa: questo problema può essere causato da problemi di connettività.

Soluzione: nel progetto Google Cloud da cui stai tentando di accedere alle API Google Cloud, abilita le API di destinazione. Per informazioni su come abilitare le API Google Cloud, consulta Abilitazione delle API.

/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.

Problema: non è possibile generare il token STS (Security Token Service).

Causa: quando esegui l'autenticazione in Google Cloud utilizzando token tramite la federazione delle identità per i carichi di lavoro o la chiave API archiviata in Secret Manager, nella configurazione di autenticazione mancano le configurazioni necessarie.

Soluzione: verifica e aggiorna i seguenti dettagli:

  • Nell'app Communication Arrangement, aggiorna l'ID pool federazione delle identità per i carichi di lavoro e l'ID provider della federazione delle identità per i carichi di lavoro.

  • Nell'app Google SDK: Main Configuration, per la mappa delle comunicazioni, aggiorna l'ID e il numero del progetto Google Cloud per la chiave client.

Per ulteriori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per utilizzare la federazione delle identità per i carichi di lavoro.

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

Problema: non è possibile eseguire l'autenticazione in Google Cloud.

Causa: quando esegui l'autenticazione in Google Cloud utilizzando token tramite la federazione delle identità per i carichi di lavoro o la chiave API archiviata in Secret Manager, l'ambito di Google Cloud non è valido.

Soluzione: nell'app SDK Google: configurazione principale, per la mappa delle comunicazioni assicurati che l'ambito di Google Cloud sia https://www.googleapis.com/auth/cloud-platform.

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

Problema: non è possibile eseguire l'autenticazione in Google Cloud utilizzando l'autenticazione basata su chiave API.

Causa: nell'accordo di comunicazione viene fornita una chiave API non valida.

Soluzione: per risolvere il problema, mantieni un nome e una versione del secret validi nell'accordo di comunicazione associato. Inoltre, assicurati che nel secret sia configurata una chiave API valida.

Per maggiori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per utilizzare la chiave API archiviata in Secret Manager

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

Problema: l'SDK non è in grado di determinare gli artefatti di comunicazione per l'autenticazione.

Causa: non è stata gestita alcuna mappa di comunicazione per il servizio di autenticazione.

Soluzione: nell'app SDK Google: configurazione principale, crea una mappa delle comunicazioni e mantieni il Tipo di autenticazione corretto per il metodo di autenticazione in uso.

Per creare una mappa di comunicazione, consulta le istruzioni per i metodi di autenticazione in Configurare l'autenticazione per la versione SAP BTP dell'SDK ABAP per Google Cloud.

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

Problema: l'SDK non riesce a determinare l'accordo di comunicazione per l'autenticazione.

Causa: la voce gestita per il servizio di autenticazione non è valida.

Soluzione: nell'app SDK Google: configurazione principale, per la voce della mappa delle comunicazioni, assicurati che l'accordo di comunicazione sia configurato con uno scenario di comunicazione e un sistema di comunicazione corretti.

Per aggiornare un accordo di comunicazione, consulta le istruzioni per i metodi di autenticazione in Configurare l'autenticazione per la versione SAP BTP dell'SDK ABAP per Google Cloud.

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

Problema: non è possibile generare il token del provider di identità dal servizio XSUAA.

Causa: quando esegui l'autenticazione in Google Cloud utilizzando token tramite Workload Identity Federation o la chiave API archiviata in Secret Manager, l'URL del nome host per il servizio XSUAA o il valore del percorso non sono validi nel sistema di comunicazione.

Soluzione: verifica e aggiorna i seguenti dettagli:

  • Nel sistema di comunicazione per il servizio XSUAA o nella destinazione BTP utilizzata nel sistema di comunicazione, mantieni l'URL del nome host corretto.
  • Nell'accordo di comunicazione, mantieni un percorso valido.

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

Problema: non è possibile generare il token del servizio token di sicurezza richiesto per l'autenticazione.

Causa: quando esegui l'autenticazione in Google Cloud utilizzando token tramite la federazione delle identità per i carichi di lavoro o la chiave API archiviata in Secret Manager e utilizzi un accordo di comunicazione per il servizio STS, il sistema di comunicazione associato al servizio STS non è valido.

Soluzione: verifica e aggiorna i seguenti dettagli:

  • Mantieni l'URL del nome host corretto nel sistema di comunicazione per il servizio STS o nella destinazione BTP utilizzata nel sistema di comunicazione.
  • Nell'accordo di comunicazione, mantieni un percorso valido.

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

Problema: non è possibile generare il token IAM richiesto per l'autenticazione.

Causa: quando esegui l'autenticazione in Google Cloud utilizzando token tramite la federazione delle identità per i carichi di lavoro o la chiave API archiviata in Secret Manager e utilizzi un accordo di comunicazione per il servizio IAM, la mappa di comunicazione e il sistema di comunicazione associati al servizio IAM non sono validi.

Soluzione: verifica e aggiorna i seguenti dettagli:

  • Nel sistema di comunicazione per il servizio IAM o nella destinazione BTP utilizzata nel sistema di comunicazione, mantieni l'URL del nome host corretto.
  • Nell'accordo di comunicazione, mantieni un percorso valido.

Errori di convalida della configurazione

G001 | Check communication scenario

Causa: lo scenario di comunicazione configurato nella mappa delle comunicazioni non è supportato con la classe di autorizzazione predefinita /GOOG/CL_AUTH_GOOGLE.

Soluzione: se utilizzi /GOOG/CL_AUTH_GOOGLE come classe di autorizzazione, assicurati che nella mappa delle comunicazioni sia specificato uno dei seguenti scenari di comunicazione in base al metodo di autenticazione:

Scenario di comunicazione Autenticazione
/GOOG/COM_SDK_WIF Federazione delle identità per i carichi di lavoro
/GOOG/COM_SDK_APIKSM Chiave API mediante Secret Manager

Per aggiornare una mappa delle comunicazioni, consulta le istruzioni per i metodi di autenticazione in Configurare l'autenticazione per la versione SAP BTP dell'SDK ABAP per Google Cloud.

W001 | Check Comm. arrangement for WIF

Causa: non è possibile identificare l'accordo di comunicazione utilizzando lo scenario di comunicazione e il sistema di comunicazione specificati nell'app SDK Google: configurazione principale.

Soluzione: assicurati che l'accordo di comunicazione per il servizio di autenticazione utilizzi uno scenario di comunicazione e un sistema di comunicazione validi.

Per ulteriori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per utilizzare la federazione delle identità per i carichi di lavoro.

W002 | Fetch XSUAA token

Causa: recupero del token XSUAA non riuscito.

Soluzione: assicurati che l'istanza del servizio XSUAA sia configurata correttamente.

Per ulteriori informazioni, consulta Creare un'istanza di servizio Authorization and Trust (XSUAA).

W003 | Fetch WIF Pool ID

Causa: l'ID pool federazione di Workload Identity non esiste nell'accordo di comunicazione.

Soluzione: nell'accordo di comunicazione utilizzato per il servizio di autenticazione, assicurati che venga utilizzato lo scenario di comunicazione /GOOG/COM_SDK_WIF e che sia specificato un ID pool di federazione delle identità per i carichi di lavoro valido.

Per ulteriori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per utilizzare la federazione delle identità per i carichi di lavoro.

W004 | Fetch WIF Provider ID

Causa: l'ID provider federazione delle identità per i carichi di lavoro non esiste nell'accordo di comunicazione.

Soluzione: nell'accordo di comunicazione utilizzato per il servizio di autenticazione, assicurati che venga utilizzato lo scenario di comunicazione /GOOG/COM_SDK_WIF e che sia specificato un ID provider della federazione delle identità per i carichi di lavoro valido.

Per ulteriori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per utilizzare la federazione delle identità per i carichi di lavoro.

W005 | Fetch STS token

Causa: il recupero del token STS non è riuscito.

Soluzione: per risolvere il problema, procedi nel seguente modo:

W006 | Fetch IAM credential token

Causa: il recupero del token IAM non è riuscito dall'API IAM Credentials.

Soluzione: per risolvere il problema, procedi nel seguente modo:

  • Nella mappa delle comunicazioni, controlla se il numero di progetto Google Cloud è gestito correttamente. Per ulteriori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per utilizzare la federazione delle identità per i carichi di lavoro.
  • Nella mappa delle comunicazioni, se viene gestita una voce per il servizio iamcredentials:v1, assicurati che l'accordo di comunicazione mantenuto sia valido, disponibile nel sistema e utilizzi lo stesso scenario di comunicazione e lo stesso sistema di comunicazione specificato nell'app di configurazione dell'SDK.

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

Causa: non è possibile identificare l'accordo di comunicazione utilizzando lo scenario di comunicazione e il sistema di comunicazione specificati nell'app SDK Google: configurazione principale.

Soluzione: assicurati che l'accordo di comunicazione mantenuto per il servizio di autenticazione sia valido, disponibile nel sistema e utilizzi lo stesso scenario di comunicazione e lo stesso sistema di comunicazione gestiti nell'app di configurazione SDK.

Per saperne di più, consulta Configurare l'SDK ABAP per Google Cloud per utilizzare la chiave API di Secret Manager.

V002 | Fetch Secret Name

Causa: il nome del secret non esiste nell'accordo di comunicazione.

Soluzione: nell'accordo di comunicazione utilizzato per il servizio di autenticazione, assicurati che venga utilizzato lo scenario di comunicazione /GOOG/COM_SDK_APIKSM e che sia specificato un secret valido.

Per saperne di più, consulta Configurare l'SDK ABAP per Google Cloud per utilizzare la chiave API di Secret Manager.

V003 | Fetch Secret Version

Causa: la proprietà Versione secret non contiene un valore valido nell'accordo di comunicazione.

Soluzione: nell'accordo di comunicazione utilizzato per il servizio di autenticazione, assicurati che venga utilizzato lo scenario di comunicazione /GOOG/COM_SDK_APIKSM e che sia specificata una versione del secret valida.

Per saperne di più, consulta Configurare l'SDK ABAP per Google Cloud per utilizzare la chiave API di Secret Manager.

V004 | Fetch Token from Secret Manager

Causa: l'API Secret Manager non è riuscita a recuperare il secret contenente la chiave API.

Soluzione: per risolvere il problema, procedi nel seguente modo:

Messaggi di errore restituiti dalle API Google Cloud

Ogni stub del client API include i parametri di esportazione che forniscono il codice restituito e i messaggi di errore dell'API.

  • ev_ret_code contiene i codici di stato HTTP. Nel caso di un errore restituito da un'API, questo parametro contiene il valore 4XX.

  • ev_err_resp contiene la categoria e il messaggio di errore restituiti da un'API.

L'esempio seguente mostra un errore restituito dall'API quando crei un nuovo argomento Pub/Sub con un nome di argomento già esistente.

  • ERROR_TEXT: conflitto
  • ERROR_DESCRIPTION: la risorsa esiste già nel progetto (resource=SAMPLE_TOPIC_01)

Per gli errori restituiti dalle API, ti consigliamo di consultare la documentazione pubblica delle API corrispondenti.

Ricevi assistenza dalla community

Poni le tue domande e discuti dell'SDK ABAP per Google Cloud con la community dei forum di Cloud.

Richiedi assistenza

Se hai bisogno di aiuto per risolvere i problemi relativi alla versione SAP BTP dell'SDK ABAP per Google Cloud, raccogli tutte le informazioni di diagnostica disponibili e contatta l'assistenza clienti Google Cloud.

Per informazioni su come contattare l'assistenza clienti Google Cloud, consulta Ottenere assistenza per SAP su Google Cloud.