Depurar despliegues en Windows Azure desde Visual Studio 2012/2013

Una de las novedades que acompañan a la versión 2.2 del SDK de Windows Azure es la posibilidad de depurar aplicaciones en la nube de Microsoft desde nuestro Visual Studio on premise. ¡Más que útil! Ya que en más de una ocasión nos hemos encontrado con algún error que sólo ocurre una vez desplegado y sólo teníamos como herramienta los logs de aplicación, conectándonos en remoto a las máquinas virtuales.

Configuración de la publicación

Para que podamos depurar las instancias, es necesario modificar las propiedades de la publicación. Básicamente son dos:

En Common Settings debemos modificar Build Configuration a modo Debug, lo cual ya nos sugiere que este despliegue sólo debería de servir para localizar comportamientos anormales dentro de la aplicación, pero no se trata de un despliegue candidato para producción.

Remote Debugger Build configuration Debug

Por otro lado, en Advanced Settings debemos habilitar el check box Enable Remote Debugger for all roles.

Enable Remote Debugger for all roles

Una vez desplegada la solución, debemos acceder a la misma desde la pestaña Server Explorer y, seleccionando el cloud service en cuestión, podemos seleccionar la instancia que necesitemos depurar, simplemente haciendo clic sobre ella con el botón derecho y seleccionando Attach Debugger

Attach Debugger Windows Azure instance

En esta demo, he utilizado un Web Role donde he añadido una acción asociada a un enlace. Al hacer clic en el mismo, veremos cómo el punto de interrupción se activa en nuestro Visual Studio en local 🙂

Debugger Attached

Happy Clouding!