Cómo administrar una página Web en Visual Studio No. 1

Hoy dejamos atrás las formas de desplegar un sitio en Azure que está en los next steps de esta página, y pasaremos al siguiente item donde explican cómo usar las herramientas Visual Studio para hacer debug de una aplicación que se encuentre en Azure.

De entrada avisan que IntelliTrace no está cubierta dentro del texto, esto para los que tienen una versión Ultimate de Visual Studio.  Adicionalmente, se usará el sitio que creamos en el primer post, así que si ya lo borró, ¡vuelva a crearlo!, y revise que tenga el update 4 instalado.

En la primera parte explican cómo hacer que los errores de una página no se muestren de manera amigable a través de la modificación del archivo Web.config.  Si al desactivar los errores amigables igual no tiene mucha idea de lo que sucede, entonces proceden a explicar cómo hacer debug del sitio remotamente.  En este caso es importante tener en cuenta que hay que desplegar en modo DEBUG hacia Azure (con los breakpoints incluídos) de modo que al adjuntar el proceso se disparará en visual studio.

La parte de WebJobs me pareció bastante interesante de debuggear, pero cabe anotar que esto solamente funciona con VS2013, así que si no lo tienes todavía instalado, date la pasadita por acá y mira qué hay de nuevo.

En el texto aparecen unas notas a tener en cuenta durante el debug remoto.  Acá se las traduzco para que las tenga en cuenta (disculpe el spanglish, pero para mí hay términos de programación que sencillamente no tienen sentido en español):

  • Correr en modo debug en producción no es recomendado.  Si su sitio de producción no está escalado para múltiples instancias de servidor, debuguear prevendrá que el servidor web responda otros requests.  Si usted tiene múltiples instancias de servidores web, cuando se adjunte al debugger obtendrá una instancia aleatoria.  Además, usted típicamente no hará despliegue un debug build a producción, y optimizaciones de compilación para release builds pueden hacer imposible mostrar qué está sucediendo línea por línea en su código fuente.  Para errores en problemas de producción, su mejor fuente es tracing de la aplicación y logs del servidor web.
  • Evite paradas largas en breakpoints cuando esté haciendo debugging remoto.  Azure trata un proceso que está detenido por más de unos minutos como un proceso que no responde, y lo apaga.
  • Mientras esté debuggeando, el servidor estará enviando datos a Visual Studio, lo cual puede afectar las cargas de ancho de banda.  Para la información acerca de las tasas de ancho de banda, vea los precios de Azure.
  • Asegúrese que el atributo debug del elemento compilation en el archivo Web.config su valor es true.  Por defecto su valor es true cuando publica un debug build.
    <system.web>
      <compilation debug="true" targetFramework="4.5" />
      <httpRuntime targetFramework="4.5" />
    </system.web>
  • Si usted encuentra que el debugger no entra al código que quiere revisar, debe de cambiar la configuración de Just My Code.  Para más información, vea este link.
  • Un timer comienza en el servidor cuando se habilita la característica de debugueo remoto, y luego de 48 horas esta característica será apagada automáticamente.  Este límite de 48 horas se da por motivos de seguridad y de rendimiento.  Recomendamos dejarlo deshabilitado cuando no esté haciedo debug activamente.
  • Usted puede adjuntar el debugger a cualquier proceso, no solamente los procesos del sitio web (w3wp.exe).  Para mayor información acerca de como usarlo, entre a este link.

Por motivos personales y porque creo que lo que sigue merece mayor detalle (Trace Logs) lo revisaré el siguiente miércoles.  Hasta la siguiente.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s