Skip to content

Como hacer depuración remota con Visual Studio

Esto es algo que es de gran ayuda en el día a día de un desarrollador, cuantas veces todo ha funcionado bien en el ambiente de desarrollo pero en cuanto lo pasas a producción cosas raras comienzan a suceder. O peor aun, todo es felicidad en producción… hasta que ya no lo es. Recibes reportes de errores de la nada y no tienes idea de que es lo que esta sucediendo en el servidor pues no puedes depurar como cuando trabajas local… o si? La depuración remota existe, y es una gran herramienta. Y en el siguiente tutorial les mostrare los pasos para poder hacerlo.

Si tu no eres quien maneja los servidores (no deberías realmente) pide a tu SysAdmin que instale las Herramientas de Depuración Remota. Pero si tu eres quien esta a cargo de los servidores, por que no hay nadie mas y no confías en el practicante o tu gerente piensa que como desarrollador tienes que saber hacer todo lo que se hace con computadoras, a continuación esta un pequeño tutorial para preparar el servidor.

Preparar el servidor (o máquina virtual)

Es necesario que el servidor tenga instaladas las herramientas de depuración remota de Visual Studio, (puedes descargar aquellas que son las correctas dependiendo de tu versión de Visual Studio). Ya sea que lo descargues desde el servidor o lo hagas en tu máquina y lo subas por FTP, necesitas conectarte por Escritorio Remoto para realizar la instalación.

Iniciar sesion escritorio remoto

Ubica el archivo descargado (generalmente un .exe) y da doble clic en el para iniciar la instalación.

Instalador Herramientas de Depuración Remota

Procede con la instalación marcando la casilla de verificación con la cual aceptas los términos y condiciones, una vez marcada se habilitara el botón de Instalar (Install):

Inicio Instalador de Herramientas de Depuracion Remota de Visual Studio

Cuando termine el proceso podemos cerrar el instalador.

Final Instalador de Herramientas de Depuracion Remota de Visual Studio

Una vez finalizada la instalación necesitaremos iniciar las Herramientas de Depuración Remota.

Acceso Directo Herramientas de Depuracion Remota de Visual Studio

Lo cual nos mostrara la siguiente ventana, en la que nos dice que se están esperando conexiones.

Ventana principal Herramientas de Depuracion Remota de Visual Studio

Con esto tenemos listo el servidor para comenzar a hacer Depuración Remota.

Iniciar Depuración Remota con Visual Studio.

Una vez tengamos nuestra solución abierta, en el menú de Depurar encontraremos la opción Asociar al proceso…

Visual Studio Asociar al proceso para Depuracion Remota

La cual nos abrirá la siguiente ventana.

Ventana principal Asociar al Proceso Visual Studio

Por defecto esta nos mostrara los procesos corriendo en nuestra máquina, útil si queremos hacer la depuración remota a nuestro IIS, pero para hacerlo en un servidor remoto o una máquina virtual, necesitamos introducir la IP de este dentro del campo Calificador.

Ventana principal Asociar al Proceso apuntando al servidor remoto

*Es importante mencionar que además de la IP se debe poner el puerto 4020 que es el que manejan las Herramientas de Depuración Remota.

Este proceso puede tomar un momento en completarse, debido a que se conecta con el servidor, es normal que aparezca el siguiente mensaje.

Mensaje operacion de Visual Studio esta tardando mucho

Una vez terminada la operación mostrara la lista de procesos que se encuentran corriendo en la máquina virtual o servidor remoto, debemos buscar el proceso llamado w3wp.exe seleccionarlo y hacer click en Asociar.

Proceso w3wp.exe para Depuracion Remota en la ventana de Asociar al proceso de Visual Studio

Posteriormente nos saldrá una alerta para que decidamos si deseamos continuar o cancelar la operación.

Alerta Asociar al proceso de Visual Studio

Al hacer clic en el botón de Asociar, Visual Studio comenzara a correr el proyecto, solo que esta vez lo hará con el proceso que corre en nuestro servidor.  Podemos verificar esto desde escritorio remoto, en la ventana de Visual Studio Remote Debugger aparecerá lo siguiente:

Ventana Herramientas de Depuracion Remota mostrando conexion existente

Consideraciones (lo que puede salir mal)

  • Si no encuentras el proceso w3wp.exe asegúrate que la casilla “Mostrar los procesos de todos los usuarios” se encuentre seleccionada.
    Casilla Mostrar los procesos de todos los usuarios

 

  • Si la casilla está marcada y aun así no encuentras el proceso en la lista, asegúrate que el AppPool en el que se encuentra tu sitio este iniciado, posteriormente accede a tu sitio desde un navegador y actualiza la lista de procesos, esto deberá mostrarlo.
  • Puede llegar a suceder que te encuentres con varios procesos llamados w3wp.exe, para saber cuál elegir debes mirar la columna “Nombre de Usuario”, esta te dirá el App Pool al que pertenece este proceso, con esto puedes identificar cual es el proceso correspondiente a tu aplicación.
    Multiples procesos w3wp.exe en la ventana de asociar proceso de Visual Studio

 

 

 

  • Si haz realizado todos los pasos correctamente pero los Breakpoints no son alcanzados debes asegurarte que el código que se encuentra en Visual Studio sea el mismo que se encuentra en el servidor remoto, ya que si presentan cambios la depuración remota no funcionara.

 

Si a pesar de seguir los pasos tienes problemas déjame un comentario y veremos que sucede.

Saludos.

Omar Martinez

Be First to Comment

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *