IntelliTraceIntelliTrace

Puede emplear menos tiempo en la depuración de la aplicación si usa IntelliTrace para registrar y realizar un seguimiento del historial de ejecución del código.You can spend less time debugging your application when you use IntelliTrace to record and trace your code's execution history. Los errores se detectan fácilmente ya que IntelliTrace le permite:You can find bugs easily because IntelliTrace lets you:

  • registrar eventos específicos;Record specific events

    Examinar el código relacionado, los datos que aparecen en la locales ventana durante los eventos del depurador y la información de llamada de funciónExamine related code, data that appears in the Locals window during debugger events, and function call information

  • depurar errores que son difíciles de reproducir o que se producen en la implementación.Debug errors that are hard to reproduce or that happen in deployment

    Puede usar IntelliTrace en Visual Studio Enterprise (pero no en las ediciones Professional o Community).You can use IntelliTrace in Visual Studio Enterprise edition (but not the Professional or Community editions).

¿Qué desea hacer?What do you want to do?

Depurar la aplicación con IntelliTrace:Debug my application with IntelliTrace:

-Mostrar eventos pasados.- Show me past events.
-Mostrar mi información de llamadas con eventos pasados.- Show me call information with past events.
-Guardar mi sesión de IntelliTrace.- Save my IntelliTrace session.
-Controlar los datos que IntelliTrace recopila.- Control the data that IntelliTrace collects.
- Tutorial: Usar IntelliTrace- Walkthrough: Using IntelliTrace
- Características de IntelliTrace- IntelliTrace Features
- Depuración histórica- Historical Debugging
- Ver las instantáneas mediante la devolución de paso de IntelliTrace- View snapshots using IntelliTrace step-back
Recopilar datos de IntelliTrace durante una sesión de prueba en Test ManagerCollect IntelliTrace data during a test session in Test Manager - Recopilar más datos de diagnóstico en las pruebas manuales- Collect more diagnostic data in manual tests
Recopilar datos de IntelliTrace de aplicaciones implementadasCollect IntelliTrace data from deployed applications - Usar el recopilador independiente IntelliTrace- Using the IntelliTrace stand-alone collector
Iniciar la depuración desde un archivo de registro de IntelliTrace (archivo. iTrace).Start debugging from an IntelliTrace log file (.iTrace file). - Uso de los datos de IntelliTrace guardados- Using saved IntelliTrace data

¿Qué aplicaciones se pueden depurar con IntelliTrace?What apps can I debug with IntelliTrace?

CompatibleSupported -Aplicaciones Visual Basic y Visual C# que usan .NET Framework 2.0 o versiones posteriores.- Visual Basic and Visual C# applications that use .NET Framework 2.0 or higher versions.
Puede depurar la mayoría de las aplicaciones, incluidas las aplicaciones de ASP.NET, Microsoft Azure, Windows Forms, WCF, WPF, Windows Workflow, SharePoint 2010, SharePoint 2013 y de 64 bits.You can debug most applications, including ASP.NET, Microsoft Azure, Windows Forms, WCF, WPF, Windows Workflow, SharePoint 2010, SharePoint 2013, and 64-bit apps.
Para depurar aplicaciones de SharePoint con IntelliTrace, consulte Tutorial: depurar una aplicación de SharePoint mediante el uso de IntelliTrace.To debug SharePoint applications with IntelliTrace, see Walkthrough: Debugging a SharePoint Application by Using IntelliTrace.
Para depurar aplicaciones de Microsoft Azure con IntelliTrace, vea depurar con IntelliTrace y Visual Studio un servicio de nube publicado.To debug Microsoft Azure apps with IntelliTrace, see Debugging a Published Cloud Service with IntelliTrace and Visual Studio.
Compatibilidad limitadaLimited support -.NET core y aplicaciones de ASP.NET Core admitidas solo para eventos- .NET Core and ASP.NET Core apps supported for events only
-Aplicaciones F # en modo experimental- F# apps on an experimental basis
-Aplicaciones UWP admitidas solo para eventos- UWP apps supported for events only
No se admiteNot supported -C++, otros lenguajes y script- C++, other languages, and script
: Los servicios Windows, Silverlight, Xbox o Windows MobileWindows Mobile aplicaciones- Windows Services, Silverlight, Xbox, or Windows MobileWindows Mobile apps

Nota

Si desea depurar un proceso que ya se está ejecutando, puede recopilar eventos de IntelliTrace solo (ninguna información de llamadas).If you want to debug a process that is already running, you can collect IntelliTrace events only (no call information). Puede adjuntar a un proceso de 32 bits o 64 bits en el equipo local únicamente.You can attach to a 32-bit or 64-bit process on the local machine only. No se recopilan los eventos que se producen antes de asociar al proceso.Events that occur before you attach to the process are not collected.

¿Por qué depurar con IntelliTrace?Why debug with IntelliTrace?

Tradicional o live depuración muestra sólo el estado actual de aplicación, con datos limitados sobre eventos pasados.Traditional or live debugging shows only your application's current state, with limited data about past events. Estos eventos deben inferirse basándose en el estado actual de la aplicación o hay que recrearlos ejecutando de nuevo la aplicación.You either have to infer these events based on the application's current state, or you have to recreate these events by rerunning your application.

IntelliTrace amplía esta experiencia de depuración tradicional al registrar eventos y datos específicos en estos puntos en el tiempo.IntelliTrace expands this traditional debugging experience by recording specific events and data at these points in time. Esto le permite ver lo que ha sucedido en la aplicación sin reiniciarla, especialmente si se encuentra más allá de donde está el error.This lets you see what happened in your application without restarting it, especially if you step past where the bug is. IntelliTrace está activado de forma predeterminada durante la depuración tradicional y recopila datos de forma automática e invisible.IntelliTrace is turned on by default during traditional debugging and collects data automatically and invisibly. Esto permite cambiar fácilmente entre la depuración tradicional y la depuración de IntelliTrace para ver la información registrada.This lets you switch easily between traditional debugging and IntelliTrace debugging to see the recorded information. Vea características de IntelliTrace y ¿qué datos recopila IntelliTrace?See IntelliTrace Features and What data does IntelliTrace collect?

IntelliTrace también puede ayudar en la depuración de errores que son difíciles de reproducir o que se producen en la implementación.IntelliTrace can also help you debug errors that are hard to reproduce or that happen in deployment. Puede recopilar datos de IntelliTrace y guardarlos en un archivo de registro de IntelliTrace (archivo .iTrace).You can collect IntelliTrace data and save it to an IntelliTrace log file (.iTrace file). Un archivo .iTrace contiene detalles sobre excepciones, eventos de rendimiento, solicitudes web, datos de prueba, subprocesos, módulos y otra información del sistema.An .iTrace file contains details about exceptions, performance events, Web requests, test data, threads, modules, and other system information. Puede abrir este archivo en Visual Studio Enterprise, seleccionar un elemento e iniciar la depuración con IntelliTrace.You can open this file in Visual Studio Enterprise, select an item, and start debugging with IntelliTrace. De esta forma, podrá acceder a cualquier evento del archivo y ver detalles concretos sobre la aplicación en ese punto en el tiempo.This lets you go to any event in the file and see specific details about your application at that point in time.

Puede guardar datos de IntelliTrace de estos orígenes:You can save IntelliTrace data from these sources:

  • Una sesión de IntelliTrace en Visual Studio Enterprise de 2017, Visual Studio 2015 Enterprise o versiones anteriores de Visual Studio Ultimate.An IntelliTrace session in Visual Studio 2017 Enterprise, Visual Studio 2015 Enterprise, or previous versions of Visual Studio Ultimate.

  • Sesiones de prueba en Microsoft Test Manager.A test session in Microsoft Test Manager

  • Aplicaciones web ASP.NET hospedadas en IIS, o aplicaciones de SharePoint 2010 y SharePoint 2013 que se ejecutan en la implementación cuando se usa Microsoft Monitoring Agent, solo o con System Center 2012.ASP.NET web apps hosted on IIS, or SharePoint 2010 and SharePoint 2013 applications running in deployment when you use Microsoft Monitoring Agent, either alone or with System Center 2012. Vea utilizar el recopilador independiente IntelliTrace y supervisión con Microsoft Monitoring Agent.See Use the IntelliTrace stand-alone collector and Monitoring with Microsoft Monitoring Agent.

    A continuación se muestran algunos ejemplos de cómo IntelliTrace puede servir de ayuda en la depuración:Here are some examples of how IntelliTrace can help you with debugging:

  • La aplicación ha dañado un archivo de datos, pero no se sabe dónde se produjo este evento.Your application has corrupted a data file, but you don't know where this event happened.

    Sin IntelliTrace, tiene que buscar en el código para encontrar todos los accesos posibles al archivo, colocar puntos de interrupción en esos accesos y volver a ejecutar la aplicación para encontrar el lugar donde se produjo el problema.Without IntelliTrace, you have to look through the code to find all possible file accesses, put breakpoints on those accesses, and rerun your application to find where the problem happened. Con IntelliTrace, puede ver todos los eventos de acceso a archivos recopilados y detalles concretos sobre la aplicación referentes al momento en que se produjo cada evento.With IntelliTrace, you can see all the collected file-access events and specific details about your application when each event happened.

  • Se produce una excepción.An exception happens.

    Sin IntelliTrace, recibirá un mensaje sobre una excepción, pero no tiene toda la información sobre los eventos que produjeron la excepción.Without IntelliTrace, you get a message about an exception but you don't have much information about the events that led to the exception. Puede examinar la pila de llamadas para ver la cadena de llamadas que produjeron la excepción, pero no puede ver la secuencia de eventos que se produjeron durante esas llamadas.You can examine the call stack to see the chain of calls that led to the exception, but you can't see the sequence of events that happened during those calls. Con IntelliTrace, puede examinar los eventos que se produjeron antes de la excepción.With IntelliTrace, you can examine the events that happened before the exception.

  • La aplicación se bloquea en un equipo de prueba pero se ejecuta correctamente en un equipo de desarrollo.Your application crashes on a test computer but runs successfully on a development computer.

    Puede recopilar datos de IntelliTrace desde Microsoft Test Manager, guardar los datos en un archivo .iTrace y adjuntar este archivo a un elemento de trabajo de Team Foundation Server para analizarlo más adelante.You can collect IntelliTrace data from Microsoft Test Manager, save the data to an .iTrace file, and attach this file to a Team Foundation Server work item for later investigation. Vea recopilar más datos de diagnóstico en las pruebas manuales y uso guarda los datos de IntelliTrace.See Collect more diagnostic data in manual tests and Use saved IntelliTrace data.

  • Se produce un error o un bloqueo en una aplicación implementada.A bug or crash happens in a deployed application.

    En aplicaciones basadas en Microsoft Azure, puede configurar la recopilación de datos de IntelliTrace antes de publicar la aplicación.For Microsoft Azure-based apps, you can configure IntelliTrace data collection before you publish the application. Mientras se ejecuta la aplicación, IntelliTrace guarda los datos en un archivo .iTrace.While your application runs, IntelliTrace saves data to an .iTrace file. Vea depurar un servicio en la nube con IntelliTrace y Visual Studio.See Debug a Published Cloud Service with IntelliTrace and Visual Studio.

    Para las aplicaciones web ASP.NET hospedadas en IIS 7.0, 7.5, y 8.0, y las aplicaciones de SharePoint 2010 o SharePoint 2013, utilice Microsoft Monitoring Agent, solo o con System Center 2012, para guardar los datos de IntelliTrace en un archivo .iTrace.For ASP.NET web apps hosted on IIS 7.0, 7.5, and 8.0, and SharePoint 2010 or SharePoint 2013 applications, use Microsoft Monitoring Agent, either alone or with System Center 2012, to save IntelliTrace data to an .iTrace file.

    Esto es útil cuando desea diagnosticar problemas con aplicaciones en fase de implementación.This is useful when you want to diagnose problems with apps in deployment. Vea utilizar el recopilador independiente IntelliTrace.See Use the IntelliTrace stand-alone collector.

¿Qué datos recopila IntelliTrace?What data does IntelliTrace collect?

Recopilar información de eventosCollect event information

De forma predeterminada, IntelliTrace únicamente registra eventos de IntelliTrace: eventos del depurador, excepciones, eventos de .NET Framework y otros eventos del sistema que pueden ayudarle con la depuración.By default, IntelliTrace records only IntelliTrace events: debugger events, exceptions, .NET Framework events, and other system events that can help you with debugging. Puede elegir las clases de eventos de IntelliTrace que desee recopilar, salvo los eventos del depurador y las excepciones, que siempre se recopilan.You can choose the kinds of IntelliTrace events that you want to collect, except for debugger events and exceptions, which are always collected. Vea características de IntelliTrace.See IntelliTrace features.

  • Eventos del depuradorDebugger events

    IntelliTrace registra siempre los eventos que se producen en el depurador de Visual Studio.IntelliTrace always records events that happen in the Visual Studio debugger. Por ejemplo, iniciar la aplicación es un evento del depurador.For example, starting your application is a debugger event. Otros eventos del depurador son los eventos de parada, que hacen que la aplicación interrumpa la ejecución.Other debugger events are stopping events, which cause your application to break execution. Por ejemplo, el programa encuentra un punto de interrupción, alcanza un punto de seguimiento o se ejecuta un paso comando.For example, your program hits a breakpoint, hits a tracepoint, or executes a Step command.

    De forma predeterminada, para incrementar el rendimiento, IntelliTrace no registra cada valor posible de un evento del depurador.By default, to help with performance, IntelliTrace doesn't record every possible value for a debugger event. En su lugar, registra estos valores:Instead, it records these values:

    • Los valores en el locales ventana.Values in the Locals window. Mantener la locales ventana abierta para ver estos valores.Keep the Locals window open to see these values.

    • Los valores en el automático solo si de ventana el automático ventana está abiertaValues in the Autos window only if the Autos window is open

    • Valores de información sobre datos que aparecen cuando mueve el puntero del mouse sobre una variable en la ventana de código fuente para ver su valor.Values in DataTips that appear when you move the mouse pointer on top of a variable in the source window to see its value. IntelliTrace no recopila los valores de las informaciones sobre datos ancladas.IntelliTrace doesn't collect values in pinned DataTips.

    Cuando se habilita el modo de eventos de IntelliTrace e instantáneas, IntelliTrace tendrá una instantánea del proceso de la aplicación en cada depurador punto de interrupción y paso eventos.When IntelliTrace Events and Snapshots mode is enabled, IntelliTrace will take a snapshot of the application's process at each debugger Breakpoint and Step event. Esto registrará los valores de la locales, automático, y inspección windows, independientemente de si están abiertas las ventanas o no.This will record values in the Locals, Autos, and Watch windows, regardless of whether the windows are open or not. También se recopilarán los valores de las sugerencias de datos anclado.Values in any pinned data tips will also be collected.

  • ExcepcionesExceptions

    IntelliTrace registra el tipo y el mensaje de excepción de estas clases de excepciones:IntelliTrace records the exception type and message for these kinds of exceptions:

    • Excepciones controladas en las que la excepción se inicia y se detectaHandled exceptions where the exception is thrown and caught

    • Excepciones no controladasUnhandled exceptions

  • Eventos de .NET framework.NET Framework events

    De forma predeterminada, IntelliTrace registra los eventos más comunes de .NET Framework.By default, IntelliTrace records the most common .NET Framework events. Por ejemplo:For example:

    • Para un evento de activar casilla, IntelliTrace recopila el estado y el texto de la casilla.For a Check Checkbox event, IntelliTrace collects the checkbox state and text.
  • Eventos de aplicación de SharePoint 2010 y SharePoint 2013SharePoint 2010 and SharePoint 2013 application events

    Puede registrar eventos de perfil de usuario y un subconjunto de eventos del sistema de registro unificado (ULS) para las aplicaciones de SharePoint 2010 y 2013 que se ejecutan fuera de Visual Studio.You can record user profile events and a subset of Unified Logging System (ULS) events for SharePoint 2010 and 2013 applications running outside Visual Studio. Puede guardar estos eventos en un archivo .iTrace.You can save these events to an .iTrace file. Requiere Visual Studio Enterprise 2017, Visual Studio Enterprise 2015, una versión anterior de Visual Studio Ultimate o Microsoft Monitoring Agent ejecuta en seguimiento modo.Requires Visual Studio Enterprise 2017, Visual Studio Enterprise 2015, a previous version of Visual Studio Ultimate, or Microsoft Monitoring Agent running in Trace mode.

    Al abrir el archivo .iTrace, especifique un identificador de correlación de SharePoint para buscar la solicitud web coincidente, ver los eventos registrados e iniciar la depuración desde un evento específico.When you open the .iTrace file, enter a SharePoint correlation ID to find its matching web request, view the recorded events, and start debugging from a specific event. Si el archivo contiene excepciones no controladas, puede elegir un identificador de correlación para empezar a depurar una excepción.If the file contains unhandled exceptions, you can choose a correlation ID to start debugging an exception.

    Vea:See:

    Captura de instantáneasCapture snapshots

    Puede configurar IntelliTrace para capturar instantáneas en cada punto de interrupción y evento de paso del depurador.You can configure IntelliTrace to capture snapshots at every breakpoint and debugger step event. IntelliTrace registra el estado completo de la aplicación en cada instantánea, que le permite ver variables complejo y para evaluar expresiones.IntelliTrace records the full application state at each snapshot, which allows you to view complex variables and to evaluate expressions.

    Vea ver instantáneas mediante la devolución de IntelliTrace paso.See View snapshots using IntelliTrace step-back.

    Recopilar información de llamadas de funciónCollect function call information

    Puede configurar IntelliTrace para recopilar información de llamadas de las funciones.You can configure IntelliTrace to collect call information for functions. Esta información permite ver un historial de la pila de llamadas y retroceder y avanzar por las llamadas en el código.This information lets you see a history of the call stack and lets you step backward and forward through calls in the code. Para cada llamada de función, IntelliTrace registra estos datos:For each function call, IntelliTrace records this data:

  • Nombre de la funciónFunction name

  • Valores de los tipos de datos primitivos pasados como parámetros en los puntos de entrada de la función y devueltos en los puntos de salida de la funciónValues of primitive data types passed as parameters at function entry points and returned at function exit points

  • Valores de propiedades automáticas cuando estas se leen o se cambianValues of automatic properties when they are read or changed

  • Punteros a objetos secundarios de primer nivel, pero no sus valores, salvo sin son null o noPointers to first-level child objects, but not their values other than if they were null or not

Nota

IntelliTrace recopila solo los primeros 256 objetos en matrices y los primeros 256 caracteres de las cadenas.IntelliTrace collects only the first 256 objects in arrays and the first 256 characters for strings.

Vea inspeccionar la aplicación con depuración histórica.See Inspect your app with historical debugging.

Recopilar información de módulosCollect module information

Para controlar cuánta información de llamadas debe recopilar IntelliTrace, especifique solo los módulos que le interesan.To control how much call information that IntelliTrace collects, specify only those modules that you care about. Esto puede ayudar a mejorar el rendimiento de la aplicación durante la recopilación.This can help improve your application's performance during collection. Vea la sección controlar cuánta información de IntelliTrace recopila en las características de IntelliTrace.See the section Control how much information IntelliTrace Collects in IntelliTrace features.

¿Ralentizará mi aplicación IntelliTrace?Will IntelliTrace slow down my application?

De forma predeterminada, IntelliTrace solamente recopila datos para los eventos de IntelliTrace seleccionados.By default, IntelliTrace collects data for selected IntelliTrace events only. Esto puede o no ralentizar la aplicación, dependiendo de la estructura y organización del código.This might or might not slow down your application, depending on the structure and organization of your code. Por ejemplo, si IntelliTrace registra un evento a menudo, la aplicación podría verse ralentizada.For example, if IntelliTrace records an event often, this might slow down your application. También podría hacer que usted se plantease refactorizar la aplicación.It might also make you consider refactoring your application.

La recopilación de la información de llamadas podría ralentizar considerablemente la aplicación.Collecting call information might slow down your application significantly. También podría aumentar el tamaño de los archivos de registro de IntelliTrace (archivos .iTrace) que se guardan en el disco.It might also increase the size of any IntelliTrace log files (.iTrace files) that you're saving to disk. Para reducir estos efectos, recopile la información de llamadas solo para los módulos que le interesen.To minimize these effects, collect call information only for the modules you care about. Para cambiar el tamaño máximo de los archivos. iTrace, vaya a herramientas, opciones, IntelliTrace, avanzadas.To change the maximum size of your .iTrace files, go to Tools, Options, IntelliTrace, Advanced.

En esta secciónIn this section

Características de IntelliTraceIntelliTrace Features

Diagnosis de problemas tras la implementaciónDiagnose problems after deployment

Uso de datos de IntelliTrace guardadosUse saved IntelliTrace data

BlogsBlogs

Visual Studio ALM + Team Foundation ServerVisual Studio ALM + Team Foundation Server

ForosForums

Diagnósticos de Visual StudioVisual Studio Diagnostics