Grabar la ejecución de código con IntelliTrace para depurar en Visual Studio
Para registrar y realizar un seguimiento del historial de ejecución del código o de la aplicación con IntelliTrace en Visual Studio Ultimate, simplemente empiece a depurar como de costumbre.De forma predeterminada, IntelliTrace está activado y automáticamente registra eventos específicos y datos, de modo que puede ver más fácilmente lo que sucedió en la aplicación.Vea Depurar la aplicación grabando la ejecución de código con IntelliTrace.
Para confirmar que IntelliTrace está activado:
[!NOTA]
Desactive Habilitar IntelliTrace para desactivar todos los valores personalizados de IntelliTrace.Estos valores se aplican a todos los proyectos y soluciones.Se conservan entre sesiones de depuración y sesiones de Visual Studio.
¿Qué desea hacer?
Depurar solo con eventos
Elegir los eventos que registra IntelliTrace
Depurar con eventos y la información de llamadas
Controlar cuánta información de llamadas registra IntelliTrace
Guardar la sesión de IntelliTrace
Depurar solo con eventos
Puede probar la depuración únicamente con los eventos de IntelliTrace para comprobar si de forma independiente le sirve de ayuda para encontrar el error.Los eventos de IntelliTrace son eventos del depurador, excepciones, eventos de .NET Framework y otros eventos del sistema.Puede activar o desactivar eventos específicos para controlar los eventos que registra IntelliTrace, pero hágalo antes de iniciar la depuración.
A continuación se proporciona información general sobre cómo depurar únicamente con eventos de IntelliTrace:
Volver al principio
A continuación, se detallan los pasos para depurar únicamente con eventos de IntelliTrace:
Inicie la depuración como de costumbre.Reproduzca el error.
Sugerencia Mantenga abiertas las ventanas Variables locales y Automático para ver y grabar los valores que se muestran en las ventanas.Para iniciar la depuración, presione F5 o en el menú Depuración, elija Iniciar depuración.Si no ve la ventana IntelliTrace cuando inicia la depuración, no se podrá activar IntelliTrace o la ventana podría cerrarse.Para abrir la ventana IntelliTrace, vaya a Depuración, IntelliTrace, Eventos de IntelliTrace.
Interrumpa la ejecución de la aplicación manualmente.
Sugerencia En el menú Depuración o en la ventana IntelliTrace , elija Interrumpir todos.
Ahora verá una lista cronológica de eventos en la ventana IntelliTrace, comenzando en la parte superior con el primer evento y finalizando con el último cuando el depurador interrumpió la ejecución.
Busque el evento más próximo a donde se reprodujo el error, en este caso, antes de que la aplicación interrumpiera la ejecución.
Elija el evento para expandir los detalles.
Si el código fuente está disponible, Visual Studio mueve el puntero al código correspondiente en la ventana de código fuente para que pueda examinarla.
Para ver los datos que IntelliTrace ha grabado cuando ha ocurrido el evento, elija un vínculo de Vistas relacionadas para ver la ventana de depurador correspondiente.
Si el evento es un evento de acceso a archivos, elija el vínculo de nombre de ruta de acceso para abrir el archivo.Si el nombre completo de ruta de acceso no está disponible, busque el archivo mediante el cuadro de búsqueda que aparece.
Si no encontró el error, intente que examina otros eventos que conducen al error.También puede tener información de la llamada de registro de IntelliTrace de forma que puede recorrer a través de las llamadas a función.
Volver al principio
Elegir los eventos que registra IntelliTrace
Puede activar o desactivar la grabación para determinados eventos de IntelliTrace a excepción de los eventos y las excepciones del depurador, que IntelliTrace graba siempre.
Si está depurando, detenga la depuración.De lo contrario, reinicie la depuración después de elegir los eventos.
Vaya a Herramientas, Opciones, IntelliTrace, Eventos de IntelliTrace.Elija los eventos y las categorías de eventos para que los registre IntelliTrace.
Volver al principio
Depurar con eventos y la información de llamadas
Si tiene que examinar la secuencia de llamadas a funciones de la aplicación para encontrar el error, IntelliTrace puede registrar las llamadas a función junto con los eventos.Esto le permite ver el historial de la pila de llamadas, ir hacia atrás y hacia delante a través de llamadas en el código y consultar los datos registrados por IntelliTrace, como nombres de función, sus puntos de entrada y de salida, y algunos valores de parámetros y valores devueltos.Vea Depurar la aplicación grabando la ejecución de código con IntelliTrace.
Si está depurando, detenga la depuración.De lo contrario, reinicie la depuración después de activar la colección de la llamada.
Active la colección de la llamada.
Sugerencia Esto puede ralentizar la aplicación y aumentar el tamaño de cualquier archivo de registro de IntelliTrace (archivos .iTrace) que guarde en el disco.Para obtener la mayoría de los datos de llamada pero minimizando los efectos, solo registre los datos de los módulos que le interesen.Para cambiar el tamaño máximo de los archivos .iTrace, vaya a Herramientas, Opciones, IntelliTrace, Avanzadas.
Inicie la depuración como de costumbre.Reproduzca el error.
Sugerencia Mantenga las ventanas Variables locales y Automático para ver y grabar los valores que se muestran en las ventanas.Para iniciar la depuración, presione F5 o en el menú Depuración, elija Iniciar depuración.Si no ve la ventana IntelliTrace cuando inicia la depuración, no se podrá activar IntelliTrace o la ventana podría cerrarse.Para abrir la ventana IntelliTrace, vaya a Depuración, IntelliTrace, Eventos de IntelliTrace.
Interrumpa la ejecución de la aplicación manualmente.
Sugerencia En el menú Depuración o en la ventana IntelliTrace , elija Interrumpir todos.
Busque el evento más próximo a donde se reprodujo el error.Vea Depurar solo con eventos.
Elija el evento para expandir los detalles.Junto a Vistas relacionadas, elija Vista de llamadas.
Ahora puede ver el historial de la pila de llamadas de la aplicación, comenzando en la parte superior con la llamada raíz de la aplicación y finalizando con la llamada actual en relación con el evento elegido, no actual como en tiempo real.
En la sangría aplicada bajo la llamada actual, otra lista muestra las llamadas que la llamada actual realizada a otras funciones.La lista con sangría también muestra los eventos de IntelliTrace para la llamada actual.
[!NOTA]
Las llamadas aparecen atenuadas porque IntelliTrace no registró datos de los módulos correspondientes.Para ver estos datos, haga que IntelliTrace recopile datos de esos módulos.
Busque la llamada que sigue el evento elegido.Haga doble clic en esta llamada para poder entrar en ella.
En la ventana Vista de llamadas , la llamada a la que accedió es ahora la nueva llamada actual que aparece en la parte inferior de la pila de llamadas.La lista con sangría ahora muestra las llamadas y eventos de esta nueva llamada actual.La ventana de origen y las ventanas del depurador de origen también se actualizan para esta nueva llamada actual.
Sugerencia Si solo desea ver el sitio de la llamada, haga clic una vez en la llamada en la ventana Vista de llamadas en lugar de hacer doble clic.Esto mueve el puntero al sitio de la llamada pero no accede a la llamada de modo que todavía se encuentra en la llamada actual.
Para recorrer llamadas y eventos, use el medianil de navegación que aparece junto a la ventana de código fuente cuando la información de la llamada está disponible.Si no ve el medianil de navegación, vaya a Herramientas, Opciones, IntelliTrace, Avanzadas.Elija Mostrar el medianil de navegación en modo de depuración.
Establecer aquí el contexto del depurador
Establezca el contexto de depuración en el marco de tiempo de la llamada en donde aparece.
Este icono solo aparece en cada marco de la pila de llamadas actual.
Volver al sitio de llamada
Devuelva el puntero y el contexto de depuración al punto en que se llamó a la función actual.
Si trabaja en modo de depuración, este comando inicia la depuración con IntelliTrace.
Ir a llamada o evento de IntelliTrace anterior
Devuelva el puntero y el contexto de depuración al punto de la llamada o evento anterior.
Si trabaja en modo de depuración, este comando inicia la depuración con IntelliTrace.
Entrar
Mueva el puntero y el contexto de depuración hacia delante al punto de la función seleccionada.
Este comando solo está disponible cuando se depura con IntelliTrace.
Ir a llamada o evento de IntelliTrace siguiente
Mueva el puntero y el contexto de depuración hacia delante al punto de la siguiente llamada o evento para el que existen datos de IntelliTrace.
Este comando solo está disponible cuando se depura con IntelliTrace.
Ir a modo real
Vuelva a la depuración tradicional donde se inició la depuración con IntelliTrace.
Para encontrar una instancia concreta de una llamada, busque el historial de IntelliTrace para instancias registradas de esa llamada:
Desde una línea de código donde se realiza la llamada:
[!NOTA]
Si la línea es una salida de método, no obtendrá resultados precisos.
-O bien-
Desde dentro del cuerpo de la función a la que se llama:
Asegúrese de que el archivo de proyecto que contiene la función abierta en Visual Studio.
Abra el menú contextual en el cuerpo de la función.Elija Buscar este método en IntelliTrace.
Examine los resultados para buscar la instancia que le interese.Elija la instancia para sincronizar la ventana Vista de llamadas y examine los datos registrados para esa instancia.
Volver al principio
Controlar cuánta información de llamadas registra IntelliTrace
Puede obtener información de llamadas de registro de IntelliTrace solo para los módulos que le interesen.Esto también puede ayudar a mejorar el rendimiento de la aplicación.
Para agregar varios módulos, utilice el carácter comodín * al principio o al final de la cadena.Para nombres de módulo, use nombres de archivo y no nombres del ensamblado.No se aceptan rutas de acceso a archivos.
[!NOTA]
Excluir módulos todavía puede dar lugar a recopilar datos de módulos que podrían no interesarle, como módulos de terceros o de código abierto.
Volver al principio
Guardar la sesión de IntelliTrace
Para continuar la sesión posteriormente, guarde la sesión como archivo de registro de IntelliTrace (archivo .iTrace).
Guardar la sesión manualmente
Guardar la sesión automáticamente
Sugerencia |
---|
Para ahorrar espacio en disco, desactive la opción de guardar archivos .iTrace cuando no los necesita más.Permanecerá cualquier archivo existente .iTrace. Visual Studio limita el tamaño del archivo predeterminado .iTrace a 250 MB porque IntelliTrace puede recopilar muchos datos.Cuando el archivo alcanza su límite, Visual Studio crea el espacio para las nuevas entradas eliminando las entradas más tempranas.Para guardar más datos que el límite predeterminado, cambie el tamaño máximo de la grabación de archivo. Visual Studio crea dos archivos .iTrace para cada sesión de IntelliTrace cuando se guardan automáticamente y se activa el proceso de hospedaje de Visual Studio (vshost.exe).Visual Studio crea un archivo .iTrace para la aplicación y un archivo .iTrace para el proceso de hospedaje.Este proceso mejora el rendimiento de la depuración, habilita ciertas funciones de depuración y está activado de forma predeterminada. |
¿Qué datos contiene el archivo .iTrace?
Un archivo .iTrace contiene los detalles sobre las excepciones, los subprocesos, las solicitudes web, los datos de prueba, los módulos y más información del sistema.Cuando abra el archivo en Visual Studio Ultimate, seleccione un elemento e inicie la depuración, puede ir a cualquier evento del archivo para examinar código relacionado y los datos grabados sobre la aplicación en ese momento.Vea Depurar la aplicación con archivos de registro (.iTrace) de IntelliTrace.
Para depurar los errores o bloqueos que se producen durante la prueba en Microsoft Test Manager pero que son difíciles de reproducir en el entorno de desarrollo, intente configurar Test Manager para recopilar los datos de IntelliTrace.Puede guardar estos datos en un archivo .iTrace y adjuntarlos a un elemento de trabajo de Team Foundation Server para análisis adicionales.Vea Cómo: Recopilar datos de IntelliTrace para ayudar a depurar problemas difíciles.
Para depurar los errores o bloqueos que se producen donde no desea cambiar la configuración del sistema, como entornos de producción, intente usar el recolector independiente para guardar los datos de IntelliTrace en un archivo .iTrace.Vea Recopilar datos de IntelliTrace fuera de Visual Studio con el recopilador independiente.
Volver al principio
¿Dónde puedo obtener información?
Depurar la aplicación grabando la ejecución de código con IntelliTrace
Incluir información de seguimiento de diagnóstico con errores difíciles de reproducir
Recopilar datos de IntelliTrace fuera de Visual Studio con el recopilador independiente
Depurar la aplicación con archivos de registro (.iTrace) de IntelliTrace
Blogs
Visual Studio ALM + Team Foundation Server
Foros
Guía
Videos
Vídeo de Channel 9: Recopilación y análisis de datos en un entorno de producción