Compartir a través de


Grabar la ejecución de código con IntelliTrace durante la depuración

Para registrar el historial de ejecución del código o de la aplicación y realizar un seguimiento con IntelliTrace en Visual Studio Ultimate, simplemente empiece a depurar como de costumbre. De forma predeterminada, IntelliTrace está activado y registra automáticamente eventos y datos específicos, de modo que se pueda ver con más facilidad 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:

Habilitar o deshabilitar IntelliTrace en Visual Studio

Nota

Al desactivar Habilitar IntelliTrace se desactiva toda la configuración personalizada de IntelliTrace.Esta configuración se aplica a todos los proyectos y soluciones.Esta configuración se mantiene entre distintas sesiones de depuración y sesiones de Visual Studio.

¿Qué desea hacer?

  • Depurar solo con eventos

  • Elegir los eventos que IntelliTrace registra

  • Depurar con eventos e información de llamadas

  • Controlar cuánta información de llamadas registra IntelliTrace

  • Guardar la sesión de IntelliTrace

Depurar solo con eventos

Puede intentar depurar únicamente con los eventos de IntelliTrace para comprobar si por sí solos le sirven de ayuda para encontrar errores. 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 IntelliTrace registra, 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:

Solo eventos de IntelliTrace: reproducir el error

Solo eventos de IntelliTrace: detalles de eventos y código

Solo eventos de IntelliTrace: error encontrado

Volver al principio

A continuación, se detallan los pasos para depurar únicamente con eventos de IntelliTrace:

  1. 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ú Depurar, elija Iniciar depuración.Si no se muestra la ventana IntelliTrace al iniciar la depuración, puede que IntelliTrace no esté activado o que la ventana esté cerrada.Para abrir la ventana IntelliTrace, vaya a Depurar, IntelliTrace, Eventos de IntelliTrace.

  2. Interrumpa la ejecución de la aplicación manualmente.

    Sugerencia

    En el menú Depurar o en la ventana IntelliTrace, elija Interrumpir todos.

    A continuación se mostrará una lista cronológica de eventos en la ventana IntelliTrace, que comienza con el primer evento en la parte superior y finaliza con el último evento en el que el depurador interrumpió la ejecución.

    Ventana IntelliTrace mostrando eventos de diagnóstico

  3. 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.

  4. 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 examinarlo.

    • Para ver los datos que IntelliTrace ha grabado cuando se produjo 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.

  5. Si no encontró el error, intente examinar otros eventos que conduzcan al error. También puede hacer que IntelliTrace registre la información de llamadas de forma que pueda examinar las llamadas a función una por una.

Volver al principio

Elegir los eventos que IntelliTrace registra

Puede activar o desactivar la grabación de determinados eventos de IntelliTrace, a excepción de los eventos y las excepciones del depurador, que IntelliTrace graba siempre.

  1. Si está depurando, detenga la depuración. De lo contrario, reinicie la depuración después de elegir los eventos.

  2. Vaya a Herramientas, Opciones, IntelliTrace, Eventos de IntelliTrace. Elija los eventos y las categorías de eventos que IntelliTrace debe registrar.

    Configurar colección de eventos de IntelliTrace

Volver al principio

Depurar con eventos e información de llamadas

Si tiene que examinar la secuencia de llamadas a funciones de la aplicación para buscar 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, por ejemplo, los nombres de función, sus puntos de entrada y de salida, y ciertos valores de parámetros y valores devueltos. Vea Depurar la aplicación grabando la ejecución de código con IntelliTrace.

  1. Si está depurando, detenga la depuración. De lo contrario, reinicie la depuración después de activar la colección de llamadas.

  2. Active la colección de llamadas.

    Configurar colección de llamadas para IntelliTrace

    Sugerencia

    Esto puede ralentizar la aplicación y aumentar el tamaño de los archivos de registro de IntelliTrace (archivos .iTrace) que guarde en el disco.Para obtener la mayoría de los datos de llamadas, pero minimizar los efectos, registre solo 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.

  3. 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 ellas.Para iniciar la depuración, presione F5 o en el menú Depurar, elija Iniciar depuración.Si no se muestra la ventana IntelliTrace al iniciar la depuración, puede que IntelliTrace no esté activado o que la ventana esté cerrada.Para abrir la ventana IntelliTrace, vaya a Depurar, IntelliTrace, Eventos de IntelliTrace.

  4. Interrumpa la ejecución de la aplicación manualmente.

    Sugerencia

    En el menú Depurar o en la ventana IntelliTrace, elija Interrumpir todos.

  5. Busque el evento más próximo al lugar donde se reprodujo el error. Vea Depurar solo con eventos.

  6. Elija el evento para expandir los detalles. Junto a Vistas relacionadas, elija Vista de llamadas.

    Ventana IntelliTrace mostrando eventos de diagnóstico

    Ahora puede ver el historial de la pila de llamadas de la aplicación, que comienza con la llamada raíz de la aplicación en la parte superior y finaliza con la llamada actual en relación con el evento elegido, no el actual en tiempo real.

    Vista de llamadas de la ventana IntelliTrace

    En la sangría aplicada bajo la llamada actual, otra lista muestra las llamadas que la llamada actual realizó 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ó los datos de los módulos correspondientes.Para ver estos datos, haga que IntelliTrace recopile datos de esos módulos.

  7. Busque la llamada que sigue al evento elegido. Haga doble clic en esta llamada para poder entrar en ella.

    En la ventana Vista de llamadas, la llamada en la que entró es ahora la nueva llamada actual que aparece en la parte inferior de la pila de llamadas. La lista con sangría muestra ahora las llamadas y eventos de esta nueva llamada actual. La ventana de origen y las ventanas del depurador 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.De esta forma se mueve el puntero al sitio de la llamada, pero no se recorre paso a paso la llamada, de modo que todavía se encuentra en la llamada actual.

  8. 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

    Establece el contexto de depuración en el período de tiempo de la llamada donde aparece.

    Este icono solo aparece en cada marco de la pila de llamadas actual.

    Volver al sitio de llamada

    Mueve el puntero y el contexto de depuración de nuevo al punto en que se llamó a la función actual.

    Si trabaja en modo de depuración tradicional, este comando inicia la depuración con IntelliTrace.

    Ir a llamada o evento de IntelliTrace anterior

    Mueve el puntero y el contexto de depuración de nuevo al punto de la llamada o evento anterior.

    Si trabaja en modo de depuración tradicional, este comando inicia la depuración con IntelliTrace.

    Entrar

    Mueve el puntero y el contexto de depuración hacia delante al punto de la función seleccionada actualmente.

    Este comando solo está disponible cuando se depura con IntelliTrace.

    Ir a llamada o evento de IntelliTrace siguiente

    Mueve el puntero y el contexto de depuración hacia delante al punto de la siguiente llamada o evento para los que existen datos de IntelliTrace.

    Este comando solo está disponible cuando se depura con IntelliTrace.

    Ir a modo real

    Vuelve a la depuración tradicional donde se inició la depuración con IntelliTrace.

  9. Para buscar una instancia concreta de una llamada, busque el historial de IntelliTrace para instancias registradas de esa llamada:

    1. Desde una línea de código donde se realiza la llamada:

      Buscar instancia de llamada durante la depuración con IntelliTrace

      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:

      1. Asegúrese de que el archivo de proyecto que contiene la función está abierto en Visual Studio.

      2. Abra el menú contextual en el cuerpo de la función. Elija Buscar este método en IntelliTrace.

    2. 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. En los nombres de módulo, use nombres de archivo y no nombres de ensamblado. No se aceptan rutas de acceso a archivos.

Configurar colección de módulos para IntelliTrace

Nota

Excluir módulos todavía podría dar lugar a recopilar datos de módulos que pueden 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 IntelliTrace manualmente en Visual Studio

Guardar la sesión automáticamente

Guardar sesión de IntelliTrace automáticamente

Sugerencia

Para ahorrar espacio en disco, desactive la opción de guardar archivos .iTrace cuando no los necesite más.Permanecerá cualquier archivo .iTrace existente.

Visual Studio limita el tamaño predeterminado del archivo .iTrace a 250 MB porque IntelliTrace puede recopilar muchos datos.Cuando el archivo alcanza su límite, Visual Studio elimina las entradas más antiguas para crear espacio para las nuevas entradas.Para guardar más datos que el límite predeterminado, cambie el tamaño máximo de 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 capacidades de depuración y está activado de forma predeterminada.

¿Qué datos contiene el archivo .iTrace?

Un archivo .iTrace contiene detalles sobre las excepciones, los subprocesos, las solicitudes web, los datos de prueba, los módulos y otra 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 el código relacionado y los datos grabados sobre la aplicación en ese momento. Vea Depurar la aplicación con datos guardados de IntelliTrace.

Para depurar los errores o bloqueos que se producen durante las pruebas 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 una investigación más extensa. Vea Analizar pruebas con errores y realizar el seguimiento de errores.

Para depurar los errores o los bloqueos que se producen donde no desea cambiar la configuración del sistema, por ejemplo, los entornos de producción, intente usar el recolector independiente para guardar los datos de IntelliTrace en un archivo .iTrace. Vea Recopilar datos de diagnóstico en producción mediante el recolector independiente IntelliTrace.

Volver al principio

¿Dónde puedo obtener más información?

Depurar la aplicación grabando la ejecución de código con IntelliTrace

Recopilar datos de diagnóstico en producción mediante el recolector independiente IntelliTrace

Depurar la aplicación con datos guardados de IntelliTrace

Blogs

Visual Studio ALM + Team Foundation Server

Foros

Depurador de Visual Studio

Orientación

Pruebas para la distribución continua con Visual Studio 2012 – Capítulo 6: Cuadro de herramientas de pruebas

Vídeos

Vídeo de Channel 9: Obtención y análisis de datos de IntelliTrace para la depuración