Solucionar problemas comunes de código de salida en Azure Spring Apps

Nota:

Azure Spring Apps es el nuevo nombre del servicio Azure Spring Cloud. Aunque el servicio tiene un nuevo nombre, verá el nombre antiguo en algunos lugares durante un tiempo mientras trabajamos para actualizar recursos, como capturas de pantalla, vídeos y diagramas.

Este artículo se aplica a: ✔️ Enterprise ✔️ Basic/Standard

En este artículo se describen las acciones de solución de problemas que puede realizar cuando la aplicación de Azure Spring Apps se cierra con un código de error. Puede recibir un código de error si la implementación de la aplicación no es correcta o si la aplicación se cierra cuando se ejecuta.

Códigos de salida

El código de salida indica el motivo por el que finalizó la aplicación. La lista siguiente describe algunos códigos de salida comunes:

  • 0 : la aplicación se ha cerrado porque se ejecutó hasta su finalización. Actualice la aplicación de servidor para que se ejecute continuamente.

    Las aplicaciones de Azure implementadas en Azure Spring Apps deben ofrecer servicios continuamente. Un código de salida de 0 indica que la aplicación no se está ejecutando continuamente. Compruebe los registros y el código fuente.

  • 1: si la aplicación se cierra con un código de salida distinto de cero, depure el código y los servicios relacionados y vuelva a implementar la aplicación.

    Tenga en cuenta las siguientes causas posibles de un código de salida distinto de cero:

    • Hay algún problema con la configuración de Spring Boot.

      Por ejemplo, necesita un parámetro spring.db.url para conectarse a la base de datos, pero no se encuentra en el archivo de configuración.

    • Está desconectado de un servicio de terceros.

      Por ejemplo, debe conectarse a un servicio de Redis, pero el servicio no funciona ni está disponible.

    • No tiene acceso suficiente a un servicio de terceros.

      Por ejemplo, debe conectarse a Azure Key Vault para importar certificados en la aplicación, pero la aplicación no tiene los permisos necesarios para acceder a él.

    • Si la aplicación es un archivo estático o una aplicación de front-end dinámica atendida por un servidor web, consulte la sección sobre los errores comunes de compilación e implementación de Implementación del artículo sobre la implementación de archivos estáticos web.

  • 137 - La aplicación finaliza inmediatamente por la plataforma de hospedaje sin período de gracia. Este código de salida puede ser el resultado de uno de los escenarios siguientes:

    • Cuando se produce un error en la comprobación de ejecución, la plataforma de hospedaje elimina inmediatamente la aplicación después de intentar finalizarla y esperar un período de gracia. Asegúrese de que la aplicación controla correctamente el apagado correcto.

    • La aplicación salió debido a un error de memoria insuficiente. La aplicación solicitó recursos que la plataforma de hospedaje no pudo proporcionar. Actualice los parámetros de la máquina virtual Java (JVM) de la aplicación para restringir el uso de recursos o escalar verticalmente los recursos de la aplicación.

      Si la aplicación es una aplicación Java, compruebe los valores de los parámetros de la JVM. Pueden superar el límite de memoria de la aplicación.

      Por ejemplo, supongamos que establece el parámetro de la JVM Xmx en 10 GB, pero la aplicación usa hasta 5 GB de memoria. Reduzca el valor Xmx o aumente la memoria de la aplicación para asegurarse de que el valor del parámetro Xmx sea menor o igual que el límite de memoria de la aplicación.

  • 143: la aplicación se ha cerrado porque no pudo responder a una comprobación de estado debido a un error de memoria insuficiente o a algún otro error.

    Este código de error suele generarse debido a un error de memoria insuficiente. Para obtener más información, consulte Problemas de reinicio de la aplicación causados por problemas de memoria insuficiente.

    También puede obtener detalles del registro de aplicaciones mediante el comando az spring app logs de la CLI de Azure. Para más información, consulte Transmisión de registros de consola de aplicaciones de Azure Spring Apps en tiempo real.

Pasos siguientes