Fonctionnalités IntelliTrace (C#, Visual Basic, C++)

S’applique à :yes Visual Studio Visual Studio nopour Mac noVisual Studio Code

Vous pouvez utiliser IntelliTrace pour enregistrer les événements et les appels de méthode dans votre application, ce qui vous permet d'examiner son état (pile des appels et valeurs des variables locales) à différents stades de l'exécution. Démarrez simplement le débogage comme d’habitude - IntelliTrace est activé par défaut, et vous pouvez voir les informations qu’IntelliTrace enregistre dans la nouvelle fenêtre Outils de diagnostic sous l’onglet Événements . Sélectionnez un événement, puis cliquez sur Activer le débogage historique pour afficher la pile des appels et les locaux enregistrés pour cet événement.

Pour obtenir une description étape par étape, consultez Procédure pas à pas : utilisation d'IntelliTrace.

IntelliTrace est disponible dans Visual Studio Enterprise Edition, mais pas dans les éditions Visual Studio Professional ou Community.

Pour vérifier que IntelliTrace est activé, ouvrez la page Options IntelliTrace des outils >>. L’option Activer IntelliTrace doit être activée par défaut.

Notes

L’étendue de tous les paramètres dans la page d’options IntelliTrace est Visual Studio tout entier, et non pas des projets ou des solutions spécifiques. Une modification de ces paramètres s'applique à toutes les instances de Visual Studio, à toutes les sessions de débogage et à tous les projets ou solutions.

Choisissez les événements que IntelliTrace enregistre (C#, Visual Basic)

Vous pouvez activer ou désactiver l'enregistrement d'événements IntelliTrace spécifiques.

Si vous êtes en cours de débogage, interrompez-le. Accédez aux options > d’outils > IntelliTrace > IntelliTrace Événements. Choisissez les événements IntelliTrace à enregistrer.

Collecter des instantanés (C#, Visual Basic, C++)

Cela n’est pas activé par défaut, mais IntelliTrace peut capturer des instantanés de votre application à chaque événement d’étape d’arrêt et de débogueur, et vous pouvez afficher ces instantanés dans une session de débogage historique. Un instantané vous donne une vue de l’état complet de votre application. Pour activer la capture d’instantanés, accédez à Outils > Options > IntelliTrace Général, puis sélectionnez Instantanés IntelliTrace >(gérés et natifs). Pour plus d’informations, consultez Inspecter les états d’application précédents à l’aide d’IntelliTrace.

Les instantanés sont disponibles dans Visual Studio Enterprise 2017 version 15.5 et ultérieure, et il nécessite la mise à jour anniversaire windows 10 ou ultérieure. Pour les applications .NET Core et ASP.NET Core, Visual Studio Enterprise 2017 version 15.7 est requise. Pour les applications natives ciblant Windows, Visual Studio Enterprise 2017 version 15.9 Preview 2 est nécessaire.

Collecter les événements IntelliTrace et les informations d’appel (C#, Visual Basic)

Cette fonctionnalité n’est pas activée par défaut, mais IntelliTrace peut enregistrer les appels de méthode en plus des événements. Pour activer la collection d’appels de méthode, accédez à Outils > Options > IntelliTrace Général, puis sélectionnez les événements IntelliTrace >et les informations d’appel (gérés uniquement).

Les informations d’appel ne sont pas actuellement disponibles pour les applications .NET Core et ASP.NET Core.

Cette opération vous permet de consulter l'historique de la pile des appels et de vous déplacer vers l'arrière ou vers l'avant dans les appels de votre code. IntelliTrace enregistre des données comme les noms des méthodes, les points d'entrée et de sortie des méthodes, ainsi que certaines valeurs de paramètres et de retour.

Conseil

Cette option n'est pas activée par défaut, car elle ajoute une charge considérable. Non seulement IntelliTrace doit intercepter chaque appel de méthode effectué par votre application, mais il doit également gérer un ensemble beaucoup plus vaste de données en ce qui concerne l'affichage à l'écran ou la conservation sur disque.

Vous pouvez réduire la surcharge de performances en limitant la liste des événements enregistrés par IntelliTrace et en réduisant au minimum le nombre de modules que vous collectez. Pour plus d’informations, consultez Vérifier le nombre d’informations sur les appels qu’IntelliTrace enregistre.

Utiliser la barre de navigation

Vous pouvez utiliser la marge de navigation affichée à gauche de la fenêtre de code. Si vous ne voyez pas la barre de navigation, accédez à Outils > Options > IntelliTrace > Avancé, puis sélectionnez Afficher la barre de navigation en mode débogage.

La marge de navigation vous permet de vous déplacer vers l'avant et vers l'arrière parmi les appels de méthode et les événements en mode de débogage d'historique. Pour plus d’informations sur le débogage d’historique, consultez Débogage d’historique. Elle comporte plusieurs commandes :

Commande Description
Définir le contexte du débogueur ici Définissez le contexte du débogueur en fonction du moment auquel apparaît l'appel.

Cette icône apparaît uniquement sur la pile des appels actuelle.
Revenir au site d’appel Déplacez le pointeur et le contexte de débogage en remontant jusqu'au moment où la fonction active a été appelée.

Si vous êtes en mode de débogage réel cette commande active le débogage d'historique. Si vous revenez à l'arrêt d'exécution d'origine, le débogage d'historique est désactivé et le débogage réel est activé.
Aller à l’appel ou l’événement IntelliTrace précédent Déplacez le pointeur et le contexte de débogage en remontant jusqu'à l'appel ou l'événement précédent.

Si vous êtes en mode de débogage réel, cette commande active le débogage d'historique.
Étape dans Effectuer un pas à pas détaillé dans la fonction sélectionnée.

Cette commande est disponible uniquement quand vous êtes en mode de débogage d'historique.
Aller à l’appel ou l’événement IntelliTrace suivant Déplacez le pointeur et le contexte de débogage en avançant jusqu'à l'appel ou l'événement suivant pour lequel il existe des données IntelliTrace.

Cette commande est disponible uniquement quand vous êtes en mode de débogage d'historique.
Aller à Mode réel Revenir au débogage réel

Rechercher une ligne ou une méthode dans IntelliTrace

Vous pouvez rechercher des méthodes uniquement quand les informations sur les appels de méthode ont été activées. Vous pouvez consulter l'historique d'IntelliTrace à la recherche d'une ligne ou d'une méthode spécifique. Quand l’exécution du débogueur est interrompue, cliquez avec le bouton droit dans le corps de la fonction pour afficher le menu contextuel et cliquez sur Rechercher cette ligne dans IntelliTrace ou Rechercher cette méthode dans IntelliTrace.

Vérifier le nombre d'informations sur les appels qu'IntelliTrace enregistre

Par défaut, IntelliTrace enregistre des informations pour tous les modules utilisés par votre solution. Vous pouvez configurer IntelliTrace pour qu'il enregistre des informations sur les appels uniquement pour les modules qui vous intéressent. Dans Les options >> d’outils>, vous pouvez spécifier les modules à inclure ou les modules à exclure d’IntelliTrace. IntelliTrace recueille uniquement les événements provenant des modules que vous avez spécifiés et les appels de méthode qui se sont produits dans les modules qui vous intéressent.

Pour ajouter plusieurs modules, utilisez le caractère générique * au début ou à la fin de la chaîne. Pour les noms de modules, utilisez des noms de fichiers, et non des noms d'assemblys. Les chemins d’accès de fichiers ne sont pas acceptés.

Essayez de réduire le nombre de modules au minimum. Vous obtiendrez de meilleures performances car il y aura moins de données à recueillir. Vous obtiendrez également moins de bruit dans l'interface utilisateur car il y aura moins de données à parcourir.

Enregistrer des données IntelliTrace dans un fichier (C#, Visual Basic, C++)

Vous pouvez enregistrer les données collectées par IntelliTrace en accédant à La > session IntelliTrace Enregistrer IntelliTrace > pendant le débogage et que l’application est en état d’arrêt. L'élément de menu est désactivé et vous ne pourrez pas enregistrer les données recueillies par IntelliTrace si l'application est encore en cours d'exécution ou si vous avez arrêté le débogage.

Vous pouvez configurer IntelliTrace pour enregistrer automatiquement dans un fichier en accédant aux options > d’outils > IntelliTrace Avancé et en sélectionnant stocker les enregistrements IntelliTrace >dans ce répertoire. Vous pouvez aussi configurer une taille fixe pour le fichier généré. Dans ce cas, IntelliTrace remplace les anciennes données quand l'espace libre est insuffisant. Visual Studio crée deux fichiers pour chaque session IntelliTrace quand elles sont enregistrées automatiquement et que le processus d'hébergement Visual Studio (vshost.exe) est activé.

Conseil

Pour économiser de l’espace disque, désactivez l’enregistrement automatique des fichiers quand vous n’en avez plus besoin. Les fichiers existants ne seront pas supprimés. Vous pouvez toujours enregistrer les données dans un fichier à la demande à partir du menu contextuel.

Quand vous enregistrez des données IntelliTrace dans un fichier, vous obtenez un fichier .itrace pour chaque processus à partir duquel IntelliTrace a recueilli des données. Vous pouvez ensuite ouvrir le fichier .itrace dans Visual Studio en accédant à Fichier > ouvert > et en sélectionnant le fichier .itrace dans la boîte de dialogue Ouvrir le fichier. Pour plus d’informations, consultez Utilisation des données IntelliTrace enregistrées.

Blogs

IntelliTrace dans Visual Studio Enterprise 2015

Procédure pas à pas du débogage en direct à l’aide d’IntelliTrace dans Visual Studio 2015 (Éditeur de texte)

Procédure pas à pas du débogage en direct à l’aide d’IntelliTrace dans Visual Studio 2015 (Club social)

IntelliTrace dans Visual Studio Enterprise 2015 prend désormais en charge l’attachement !

Collecter des données à partir d’un service Windows à l’aide du collecteur autonome IntelliTrace

Modification du plan de collection IntelliTrace

Custom TraceSource et débogage à l’aide d’IntelliTrace

Collecteur autonome IntelliTrace et pools d’applications s’exécutant sous des comptes Active Directory

Forums

Débogueur Visual Studio