Depuración remota de las aplicaciones en Azure Spring Apps
Nota:
Los planes de Básico, Estándar y Enterprise quedarán en desuso a partir de mediados de marzo de 2025, con un período de retiro de 3 años. Se recomienda realizar la transición a Azure Container Apps. Para más información, consulte el anuncio de retirada de Azure Spring Apps.
El plan de consumo estándar y dedicado quedará obsoleto a partir del 30 de septiembre de 2024, con un cierre completo al cabo de seis meses. Se recomienda realizar la transición a Azure Container Apps. Para obtener más información, consulte Migrar el plan de consumo y dedicado Azure Spring Apps Standard a Azure Container Apps.
Este artículo se aplica a:✅ Básico/Estándar ✅ Enterprise
Esta característica describe cómo habilitar la depuración remota de las aplicaciones en Azure Spring Apps.
Requisitos previos
CLI de Azurecon la extensión Azure Spring Apps. Use el siguiente comando para quitar las versiones anteriores e instalar la extensión más reciente: Si ya ha instalado la extensión spring-cloud, desinstálela para evitar errores de coincidencia de la configuración y la versión.
az extension remove --name spring az extension add --name spring az extension remove --name spring-cloud
Una aplicación implementada en Azure Spring Apps.
Habilitación o deshabilitación de la depuración remota
Por motivos de seguridad, Azure Spring Apps deshabilita la depuración remota de forma predeterminada. En función de la directiva de la empresa, puede habilitar la depuración remota para la aplicación usted mismo o ver un administrador para habilitarla. Puede habilitar o deshabilitar la depuración remota mediante la CLI de Azure, Azure Portal o la extensión de VS Code.
Siga estos pasos para habilitar la depuración remota para la aplicación mediante Azure Portal:
Asignación de un rol de Azure
Para depurar de forma remota una instancia de aplicación, se le debe conceder el rol Azure Spring Apps Remote Debugging Role
, que incluye el Microsoft.AppPlatform/Spring/apps/deployments/remotedebugging/action
permiso de acción de datos.
Puede asignar un rol de Azure mediante Azure Portal o la CLI de Azure.
Siga estos pasos para asignar un rol de Azure mediante Azure Portal.
Abra Azure Portal.
Abra su instancia de servicio de Azure Spring Apps.
En el panel de navegación izquierdo, seleccione Access Control (IAM).
En la página Control de acceso (IAM), seleccione Agregar y, a continuación, seleccione Agregar asignación de roles.
En la página Agregar asignación de roles, en la lista Nombre, busque y seleccione Rolde depuración remota de Azure Spring Apps y, a continuación, seleccione Siguiente.
Seleccione Miembrosy, a continuación, busque y seleccione el nombre de usuario.
Seleccione Revisar y asignar.
Depuración de una instancia de aplicación de forma remota
Puede depurar una instancia de aplicación de forma remota mediante el Azure Toolkit for IntelliJ o la extensión Azure Spring Apps para VS Code.
En esta sección se describe cómo depurar una instancia de aplicación de forma remota mediante el Azure Toolkit for IntelliJ.
Requisitos previos
- Kit de herramientas de Azure para IntelliJ.
- IntelliJ IDEA, Ultimate o Community Edition.
Habilitación o deshabilitación de la depuración remota
Siga estos pasos para habilitar o deshabilitar la depuración remota:
Inicia sesión en tu cuenta de Azure en Azure Explorer.
Seleccione una instancia de aplicación y, a continuación, seleccione Habilitar depuraciónremota.
Asociar depurador
Siga estos pasos para asociar una base de datos.
Seleccione una instancia de aplicación y, a continuación, seleccione Asociar depurador. IntelliJ se conecta a la instancia de la aplicación e inicia la depuración remota.
Azure Toolkit for IntelliJ crea la configuración de depuración remota. Puede encontrarlo en Depuración remota de Jvm" Configure la ruta de acceso de clase del módulo al código fuente que se usa para la depuración remota.
Solución de problemas
Esta sección proporciona información para solucionar problemas.
Realice las siguientes acciones si no puede adjuntar el depurador y recibe un error similar a
java.net.SocketException, connection reset
oFailed to attach to remote debugger, ClosedConnectionException
:Realice las siguientes acciones si asocia correctamente el depurador, pero no puede depurar de forma remota la instancia de la aplicación:
- Asegúrese de que el IDE contiene el código fuente que desea depurar.
- Asegúrese de que la configuración de depuración tenga la ruta de acceso de clase de módulo correcta.
Limitaciones
La depuración remota solo se admite para aplicaciones Java.
Plan | Tipo de implementación | Compatible |
---|---|---|
Plan Estándar y Básico | Jar | Sí |
Plan Estándar y Básico | Código fuente (Java) | Sí |
Plan Estándar y Básico | Imagen personalizada | No |
Plan Enterprise | Aplicación Java | Sí |
Plan Enterprise | Código fuente (Java) | Sí |
Plan Enterprise | Imagen personalizada | No |
Sugerencias
- La depuración remota de Java es peligrosa porque permite la ejecución remota de código. Azure Spring Apps le ayuda a proteger la comunicación entre el IDE de cliente y la aplicación remota. Sin embargo, debe deshabilitar la depuración remota y quitar el rol RBAC después de que haya terminado.
- Debe escalar la instancia de la aplicación a una para asegurarse de que el tráfico puede ir a la instancia.