Soluciona problemas de la edición SAP BTP del SDK de ABAP para Google Cloud

Para solucionar problemas con la edición SAP BTP del SDK de ABAP para Google Cloud, el primer paso es descubrir de dónde puede provenir el problema. El problema podría estar relacionado con la infraestructura, el entorno de SAP BTP y las herramientas que usas, o el SDK de ABAP para Google Cloud.

Si tu análisis apunta a un problema con el SDK de ABAP para Google Cloud, soluciona los problemas con los registros de la aplicación de SAP y los mensajes de error.

Si crees que el problema se encuentra en tu entorno o herramientas de SAP, comunícate con SAP para obtener asistencia.

Comprueba los requisitos previos

Asegúrate de que se cumplan todos los requisitos previos para la instalación de la edición SAP BTP del SDK de ABAP para Google Cloud. Para obtener información sobre los requisitos de instalación del SDK, consulta Antes de comenzar.

Lee la documentación de asistencia de SAP

Si tienes una cuenta de usuario de SAP, puedes encontrar la resolución para muchos problemas de software de SAP si lees las notas de SAP y los artículos de la base de conocimiento de SAP disponibles en SAP ONE Support Launchpad (Launchpad de asistencia de SAP ONE).

Ver registros

Cuando se configura el registro, la edición SAP BTP del SDK de ABAP para Google Cloud registra los mensajes de error en los registros de la aplicación SAP. Para obtener más información sobre el registro, consulta Configura el registro.

Para ver los mensajes de registro, realiza los siguientes pasos:

  1. Accede al SAP Fiori launchpad del sistema BTP ABAP en el que está instalado el SDK de ABAP para Google Cloud.
  2. Abre la app del SDK de Google: Visualización de los registros de la aplicación.
  3. Proporciona los filtros de registro según corresponda:

    • De: selecciona una fecha de inicio para filtrar los registros.
    • Para: selecciona una fecha de finalización para filtrar los registros.
    • Objetos de registro: Selecciona un objeto de registro para el que se deben recuperar los registros.
    • Subobjeto de registro: Selecciona un subobjeto de registro para el que se deben recuperar los registros.
    • Nombre del servicio: selecciona los nombres de los servicios de API con los que se deben recuperar los registros.
  4. Haz clic en Ir. Se muestra la lista de encabezados de registro de la aplicación.

    Encabezados de registro de la aplicación

  5. Haz clic en el encabezado de un registro para navegar a los registros detallados a nivel del elemento. Los mensajes de registro se muestran con gravedad y marca de tiempo.

    Registros detallados a nivel de los elementos

    Por lo general, un mensaje de registro consta de las siguientes dos entradas:

    • Ingresar: Proporciona información sobre la ubicación del código donde se produjo exactamente el error. Para solucionar problemas, puedes usar esta ubicación de código como interrupción durante la depuración.
    • Mensaje de error: Proporciona información sobre un error que ocurrió cuando se realizó una operación.

Depuración

Si tienes la autorización requerida, puedes depurar las clases de cliente de la API.

Para depurar las clases de cliente de la API, usa una de las siguientes opciones:

  • Agrega una interrupción al constructor de la clase /GOOG/CL_HTTP_CLIENT y, luego, ejecuta tu programa.

  • Agrega una interrupción al método que estás usando y, luego, ejecuta tu programa.

HTTP trace

Cuando solucionas errores, puedes verificar el seguimiento de llamada HTTP en las conexiones de salida del sistema SAP Monitor. Para obtener más información, consulta la página de SAP Supervisión de la comunicación saliente del sistema en general.

Problemas operativos comunes

Cuando se consumen las APIs de Google Cloud a través de los métodos públicos de stub para los clientes, los desarrolladores pueden encontrar errores y excepciones. Estos errores y excepciones se clasifican de forma amplia en dos categorías:

En esta sección, se abarcan los errores y las excepciones que activa el SDK.

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

Problema: La solicitud HTTP a un método de la API falló.

Causa: Este problema puede deberse a problemas de conectividad.

Resolución: En el proyecto de Google Cloud desde el que intentas acceder a las API de Google Cloud, habilita las API de destino. Para obtener información sobre cómo habilitar las APIs de Google Cloud, consulta Habilita las 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: No puedes generar el token del servicio de token de seguridad (STS).

Causa: Cuando se autentica en Google Cloud con tokens a través de la federación de identidades para cargas de trabajo o la clave de API almacenada en Secret Manager, a la configuración de autenticación le faltan los parámetros de configuración necesarios.

Resolución: Verifica y actualiza los siguientes detalles:

  • En la app de Acuerdo de comunicación, actualiza el ID del grupo de la federación de identidades para cargas de trabajo y el ID del proveedor de la federación de identidades para cargas de trabajo.

  • En la app SDK de Google: Configuración principal, para tu mapa de comunicación, actualiza el ID del proyecto de Google Cloud y el número del proyecto de Google Cloud para la clave de cliente.

Si deseas obtener más información, consulta Configura el SDK de ABAP para Google Cloud para que use la federación de identidades para cargas de trabajo.

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

Problema: No puedes autenticarte en Google Cloud.

Causa: Cuando te autenticas en Google Cloud con tokens a través de la federación de identidades para cargas de trabajo o la clave de API almacenada en Secret Manager, el permiso de Google Cloud es el siguiente: No válido.

Resolución: En la app de SDK de Google: Configuración principal, para tu mapa de comunicación, asegúrate de que el Alcance de Google Cloud sea el siguiente: https://www.googleapis.com/auth/cloud-platform

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

Problema: No puedes autenticarte en Google Cloud con la autenticación basada en la clave de API.

Causa: Se proporciona una clave de API no válida en el arreglo de comunicación.

Resolución: Para resolver este problema, mantén un nombre y una versión válidos de secreto en el acuerdo de comunicación asociado. Además, asegúrate de que se configure una clave de API válida en el secreto.

Si deseas obtener más información, consulta Configura el SDK de ABAP para Google Cloud para que use la clave de API almacenada en Secret Manager

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

Problema: El SDK no puede determinar los artefactos de comunicación para la autenticación.

Causa: No se mantiene ningún mapa de comunicación para el servicio de autenticación.

Resolución: En la app SDK de Google: configuración principal, crea un mapa de comunicación y mantén el tipo de autenticación correcto para el método de autenticación que usas.

Si deseas crear un mapa de comunicación, consulta las instrucciones para los métodos de autenticación en Configura la autenticación para la edición SAP BTP del SDK de ABAP para Google Cloud.

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

Problema: El SDK no puede determinar el acuerdo de comunicación para la autenticación.

Causa: La entrada mantenida para el servicio de autenticación no es válida.

Resolución: En la app de SDK de Google: configuración principal, para tu entrada de mapa de comunicación, asegúrate de que el acuerdo de comunicación esté configurado con los valores correctos. y situación de comunicación y sistema de comunicación.

Para actualizar un acuerdo de comunicación, consulta las instrucciones para los métodos de autenticación en Configura la autenticación para la edición SAP BTP del SDK de ABAP para Google Cloud.

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

Problema: No puedes generar el token del proveedor de identidad desde el servicio XSUAA.

Causa: Cuando te autenticas en Google Cloud con tokens a través de la federación de identidades para cargas de trabajo o la clave de API almacenada en Secret Manager, ya sea la URL del nombre de host para el servicio XSUAA o la ruta de acceso valor no es válido en el sistema de comunicación.

Resolución: Verifica y actualiza los siguientes detalles:

  • En el sistema de comunicación para el servicio XSUAA o en el destino de BTP que se usa en el sistema de comunicación, mantén la URL del nombre de host correcta.
  • En la disposición de comunicación, mantén una ruta válida.

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

Problema: No puedes generar el token de servicio del token de seguridad necesario para la autenticación.

Causa: Cuando te autenticas en Google Cloud con tokens a través de la federación de identidades para cargas de trabajo o la clave de API almacenada en Secret Manager, y usas un acuerdo de comunicación para el servicio de STS, el sistema de comunicación asociado con el servicio de STS no es válido.

Resolución: Verifica y actualiza los siguientes detalles:

  • En el sistema de comunicación para el servicio de STS o en el destino de BTP que se usa en el sistema de comunicación, mantén la URL del nombre de host correcta.
  • En la disposición de comunicación, mantén una ruta válida.

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

Problema: No puedes generar el token de IAM necesario para la autenticación.

Causa: Cuando te autenticas en Google Cloud con tokens a través de la federación de identidades para cargas de trabajo o la clave de API almacenada en Secret Manager, y usas un acuerdo de comunicación para el servicio de IAM, el mapa de comunicación y el sistema de comunicación asociado con el servicio de IAM no son válidos.

Resolución: Verifica y actualiza los siguientes detalles:

  • En el sistema de comunicación del servicio de IAM o en el destino de BTP que se usa en el sistema de comunicación, mantén la URL del nombre de host correcta.
  • En la disposición de comunicación, mantén una ruta válida.

Errores de validación de la configuración

G001 | Check communication scenario

Causa: La situación de comunicación configurada en el mapa de comunicación no es compatible con la clase de autorización predeterminada /GOOG/CL_AUTH_GOOGLE.

Resolución: Si usas /GOOG/CL_AUTH_GOOGLE como la clase de autorización, asegúrate de que una de las siguientes situaciones de comunicación se especifique en tu mapa de comunicación según el método de autenticación:

Situación de comunicación Autenticación
/GOOG/COM_SDK_WIF Federación de identidades para cargas de trabajo
/GOOG/COM_SDK_APIKSM Clave de API con Secret Manager

Para actualizar un mapa de comunicación, consulta las instrucciones de los métodos de autenticación en Configura la autenticación para la edición SAP BTP del SDK de ABAP para Google Cloud.

W001 | Check Comm. arrangement for WIF

Causa: El acuerdo de comunicación no se puede identificar mediante la situación de comunicación y el sistema de comunicación especificados en la app de SDK de Google: configuración principal.

Resolución: Asegúrate de que el acuerdo de comunicación para el servicio de autenticación use una situación de comunicación y un sistema de comunicación válidos.

Si deseas obtener más información, consulta Configura el SDK de ABAP para Google Cloud para que use la federación de identidades para cargas de trabajo.

W002 | Fetch XSUAA token

Causa: Falló la recuperación del token XSUAA.

Resolución: Asegúrate de que la instancia de servicio de XSUAA esté configurada correctamente.

Para obtener más información, consulta Crea una instancia de servicio de autorización y confianza (XSUAA).

W003 | Fetch WIF Pool ID

Causa: El ID del grupo de la federación de identidades para cargas de trabajo no existe en la disposición de comunicación.

Resolución: En el acuerdo de comunicación que se usa para el servicio de autenticación, asegúrate de que se use la situación de comunicación /GOOG/COM_SDK_WIF y que se especifique un ID de grupo de federación de identidades para cargas de trabajo válido.

Si deseas obtener más información, consulta Configura el SDK de ABAP para Google Cloud para que use la federación de identidades para cargas de trabajo.

W004 | Fetch WIF Provider ID

Causa: El ID del proveedor de la federación de identidades para cargas de trabajo no existe en la disposición de comunicación.

Resolución: En el acuerdo de comunicación que se usa para el servicio de autenticación, asegúrate de que se use la situación de comunicación /GOOG/COM_SDK_WIF y que se especifique un ID de proveedor de federación de identidades para cargas de trabajo válido.

Si deseas obtener más información, consulta Configura el SDK de ABAP para Google Cloud para que use la federación de identidades para cargas de trabajo.

W005 | Fetch STS token

Causa: Falló la recuperación del token del STS.

Resolución: Para resolver este problema, realiza los siguientes pasos:

W006 | Fetch IAM credential token

Causa: La recuperación del token de IAM falló desde la API de credenciales de IAM.

Resolución: Para resolver este problema, realiza los siguientes pasos:

  • En el mapa de comunicación, verifica si el número de proyecto de Google Cloud se mantiene de forma correcta. Si deseas obtener más información, consulta Configura el SDK de ABAP para Google Cloud para que use la federación de identidades para cargas de trabajo.
  • En el mapa de comunicaciones, si se mantiene una entrada para el servicio iamcredentials:v1, asegúrate de que el acuerdo de comunicación mantenido sea válido, esté disponible en el sistema y use el mismo escenario de comunicación y sistema de comunicación, como se especifica en la app de configuración del SDK.

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

Causa: El acuerdo de comunicación no se puede identificar mediante la situación de comunicación y el sistema de comunicación especificados en la app de SDK de Google: configuración principal.

Resolución: Asegúrate de que el acuerdo de comunicación mantenido para el servicio de autenticación sea válido, esté disponible en el sistema y use el mismo caso de comunicación y sistema de comunicación que se mantiene en App de configuración del SDK.

Si deseas obtener más información, consulta Configura el SDK de ABAP para Google Cloud para que use la clave de API de Secret Manager.

V002 | Fetch Secret Name

Causa: El nombre del secreto no existe en la disposición de comunicación.

Resolución: En el acuerdo de comunicación que se usa para el servicio de autenticación, asegúrate de que se use la situación de comunicación /GOOG/COM_SDK_APIKSM y que se especifique un secreto válido.

Si deseas obtener más información, consulta Configura el SDK de ABAP para Google Cloud para que use la clave de API de Secret Manager.

V003 | Fetch Secret Version

Causa: La propiedad Versión del secreto no contiene un valor válido en la disposición de comunicación.

Resolución: En el acuerdo de comunicación que se usa para el servicio de autenticación, asegúrate de que se use la situación de comunicación /GOOG/COM_SDK_APIKSM y que se especifique una versión de secreto válida.

Si deseas obtener más información, consulta Configura el SDK de ABAP para Google Cloud para que use la clave de API de Secret Manager.

V004 | Fetch Token from Secret Manager

Causa: La API de Secret Manager no pudo recuperar el Secret que contiene la clave de API.

Resolución: Para resolver este problema, realiza los siguientes pasos:

Mensajes de error que muestran las APIs de Google Cloud

Cada stub de cliente de la API tiene los parámetros de exportación que proporcionan códigos de retorno y mensajes de error de la API.

  • ev_ret_code contiene los códigos de estado HTTP. En caso de un error que muestra una API, este parámetro contiene un valor 4XX.

  • ev_err_resp contiene la categoría de error y el mensaje de error que muestra una API.

En el siguiente ejemplo, se muestra un error que muestra la API cuando creas un tema de Pub/Sub nuevo con un nombre de tema que ya existe.

  • ERROR_TEXT: El conflicto
  • ERROR_DESCRIPTION: El recurso ya existe en el proyecto (recurso=SAMPLE_TOPIC_01)

Para los errores que muestran las APIs, te recomendamos que verifiques la documentación pública de las APIs correspondientes.

Obtén asistencia de la comunidad

Haz tus preguntas y analiza el SDK de ABAP para Google Cloud con la comunidad en Cloud Forums.

Obtenga asistencia

Si necesitas ayuda para resolver problemas con la edición SAP BTP del SDK de ABAP para Google Cloud, recopila toda la información de diagnóstico disponible y comunícate con el servicio de Atención al cliente de Cloud.

Si deseas obtener más información para comunicarte con el equipo de Atención al cliente de Cloud, consulta Obtén asistencia para SAP en Google Cloud.