Risoluzione dei problemi relativi all'edizione SAP BTP dell'SDK ABAP per Google Cloud

Per risolvere i problemi relativi all'edizione SAP BTP dell'SDK ABAP per Google Cloud, il primo passo consiste nel capire da dove potrebbe provenire. Il problema potrebbe essere correlato alla tua infrastruttura, all'ambiente SAP BTP e agli strumenti che stai utilizzando o allo stesso SDK ABAP per Google Cloud.

Se l'analisi punta 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 si trovi nel tuo ambiente o nei tuoi strumenti SAP, contatta SAP per ricevere assistenza.

Controlla i prerequisiti

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

Leggi la documentazione di assistenza SAP

Se hai 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 di SAP disponibili nel lancio dell'assistenza SAP ONE.

Visualizza i log

Quando il logging è configurato, l'edizione SAP BTP di ABAP SDK for 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, segui questi passaggi:

  1. Accedi al Launchpad SAP Fiori del sistema BTP ABAP dove è installato l'SDK ABAP per Google Cloud.
  2. Apri l'app SDK Google: visualizzazione dei log dell'applicazione.
  3. Fornisci i filtri di log appropriati:

    • Da: seleziona una data di inizio da cui filtrare i log.
    • A: seleziona una data di fine alla quale filtrare i log.
    • Oggetti dei log: seleziona un oggetto di log per il quale devono essere recuperati i log.
    • Oggetto secondario dei log: seleziona un oggetto secondario dei 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 delle intestazioni dei log delle applicazioni.

    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 la gravità e il timestamp.

    Log dettagliati a livello di articolo

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

    • In entrata: 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 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 in uso, quindi esegui il programma.

Traccia HTTP

Durante la risoluzione degli errori, puoi controllare la traccia della chiamata HTTP in SAP Monitor System Outbound Connections. Per ulteriori informazioni, consulta la pagina SAP Monitoring System Outbound Communication in General.

Problemi operativi comuni

Quando utilizzano le API Google Cloud tramite i metodi pubblici di stub client, gli sviluppatori potrebbero riscontrare errori ed eccezioni. Questi errori e le eccezioni sono generalmente classificati in due categorie:

Questa sezione illustra gli errori e le eccezioni attivate 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à.

Risoluzione: 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 i token tramite Workload Identity Federation o la chiave API archiviata in Secret Manager, nella configurazione dell'autenticazione mancano le configurazioni necessarie.

Soluzione: verifica e aggiorna i seguenti dettagli:

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

  • Nell'app Google SDK: configurazione principale, per la mappa di comunicazione, aggiorna l'ID progetto Google Cloud e il numero di progetto Google Cloud per la chiave client.

Per ulteriori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per l'utilizzo della federazione di Workload Identity.

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

Problema: non è possibile autenticarsi a Google Cloud.

Causa: se esegui l'autenticazione in Google Cloud utilizzando i token tramite Workload Identity Federation o la chiave API archiviata in Secret Manager, l'ambito di Google Cloud non è valido.

Risoluzione: nell'app Google SDK: configurazione principale per la mappa di comunicazione, 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 sei in grado di 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 l'utilizzo delle chiavi API archiviate 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 viene gestita alcuna mappa di comunicazione per il servizio di autenticazione.

Soluzione: nell'app SDK Google: configurazione principale, crea una mappa di comunicazione e gestisci il tipo di autenticazione corretto per il metodo di autenticazione utilizzato.

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 è in grado di determinare la modalità di comunicazione per l'autenticazione.

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

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

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

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

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

Causa: quando esegui l'autenticazione in Google Cloud utilizzando i 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 di servizio token di sicurezza richiesto per l'autenticazione.

Causa: se esegui l'autenticazione in Google Cloud utilizzando i token tramite Workload Identity Federation o la chiave API archiviata in Secret Manager, se 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:

  • Nel sistema di comunicazione per il servizio STS o nella destinazione BTP utilizzata al suo interno, mantieni l'URL del nome host corretto.
  • 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: se esegui l'autenticazione in Google Cloud utilizzando i token tramite Workload Identity Federation o la chiave API archiviata in Secret Manager, se 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 di comunicazione 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 uno dei seguenti scenari di comunicazione sia specificato nella mappa 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 con Secret Manager

Per aggiornare una mappa di comunicazione, consulta le istruzioni per i metodi di autenticazione in Configurare l'autenticazione per l'edizione SAP BTP di ABAP SDK 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 di Google: configurazione principale.

Soluzione: assicurati che la disposizione 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 l'utilizzo della federazione di Workload Identity.

W002 | Fetch XSUAA token

Causa: il recupero del token XSUAA non è riuscito.

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

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

W003 | Fetch WIF Pool ID

Causa: l'ID pool di 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 l'utilizzo della federazione di Workload Identity.

W004 | Fetch WIF Provider ID

Causa: l'ID provider della 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 provider della federazione delle identità per i carichi di lavoro valido.

Per ulteriori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per l'utilizzo della federazione di Workload Identity.

W005 | Fetch STS token

Causa: il recupero del token STS non è riuscito.

Soluzione: per risolvere il problema, esegui le seguenti operazioni:

W006 | Fetch IAM credential token

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

Soluzione: per risolvere il problema, esegui le seguenti operazioni:

  • Nella mappa della comunicazione, controlla se il numero di progetto Google Cloud è stato gestito correttamente. Per ulteriori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per l'utilizzo della federazione di Workload Identity.
  • Nella mappa di comunicazione, se viene mantenuta una voce per il servizio iamcredentials:v1, assicurati che l'accordo di comunicazione mantenuto sia valido, disponibile nel sistema e che utilizzi lo stesso scenario di comunicazione e lo stesso sistema di comunicazione specificati 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 Google SDK: Main Configuration.

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

Per maggiori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per l'utilizzo della 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 maggiori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per l'utilizzo della 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 valida del secret.

Per maggiori informazioni, consulta Configurare l'SDK ABAP per Google Cloud per l'utilizzo della 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, esegui le seguenti operazioni:

Messaggi di errore restituiti dalle API Google Cloud

Ogni stub client API dispone dei parametri di esportazione che forniscono il codice di ritorno dell'API e i messaggi di errore.

  • ev_ret_code contiene i codici di stato HTTP. In caso di 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 dell'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 l'SDK ABAP per Google Cloud con la community sui forum Cloud.

Richiedere assistenza

Se hai bisogno di aiuto per risolvere problemi con l'edizione 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 Assistenza per SAP su Google Cloud.