Condividi tramite


Funzionalità di IntelliTrace (C#, Visual Basic, C++)

È possibile usare IntelliTrace per registrare eventi e chiamate al metodo dell'applicazione, che consente di esaminarne lo stato (stack di chiamate e valori di variabili locali) in punti diversi dell'esecuzione. È sufficiente avviare il debug come di consueto: IntelliTrace è attivato per impostazione predefinita ed è possibile visualizzare le informazioni che IntelliTrace sta registrando nella nuova finestra Strumenti di diagnostica nella scheda Eventi . Selezionare un evento e fare clic su Attiva debug cronologico per visualizzare lo stack di chiamate e le variabili locali registrate per questo evento.

Per una descrizione dettagliata, vedere Procedura dettagliata: Uso di IntelliTrace.

IntelliTrace è disponibile in Visual Studio Enterprise Edition, ma non nelle edizioni Visual Studio Professional o Community.

Per verificare che IntelliTrace sia attivato, aprire la pagina Opzioni strumenti >> IntelliTrace . L'opzione Abilita IntelliTrace dovrebbe essere selezionata per impostazione predefinita.

Annotazioni

L'ambito di tutte le impostazioni nella pagina delle opzioni di IntelliTrace è Visual Studio nel suo complesso, non per singoli progetti o soluzioni. Una modifica di queste impostazioni si applica a tutte le istanze di Visual Studio, a tutte le sessioni di debug e a tutti i progetti o soluzioni.

Scegliere gli eventi registrati da IntelliTrace (C#, Visual Basic)

È possibile attivare o disattivare la registrazione per eventi IntelliTrace specifici.

Se stai eseguendo il debug, interrompi il debug. Passare a Strumenti > Opzioni > IntelliTrace IntelliTrace > Eventi. Scegliere gli eventi da registrare in IntelliTrace.

Raccogliere snapshot (C#, Visual Basic, C++)

Questa opzione non è abilitata per impostazione predefinita, ma IntelliTrace può acquisire snapshot dell'applicazione in ogni punto di interruzione e evento del passaggio del debugger ed è possibile visualizzare questi snapshot in una sessione di debug cronologica. Uno snapshot offre una visualizzazione dello stato completo dell'applicazione. Per abilitare l'acquisizione di snapshot, andare su Strumenti > Opzioni > IntelliTrace > Generale, e selezionare Snapshot IntelliTrace (gestiti e nativi). Per altre informazioni, vedere Esaminare gli stati dell'app precedenti usando IntelliTrace.

Gli snapshot sono disponibili in Visual Studio Enterprise 2017 versione 15.5 e successive e richiedono l'Aggiornamento anniversario di Windows 10 o versione successiva. Per le app .NET Core e ASP.NET Core, è necessario Visual Studio Enterprise 2017 versione 15.7. Per le app native destinate a Windows, è necessario Visual Studio Enterprise 2017 versione 15.9 Preview 2.

Raccogliere eventi IntelliTrace e informazioni sulle chiamate (C#, Visual Basic)

Questa opzione non è abilitata per impostazione predefinita, ma IntelliTrace può registrare le chiamate ai metodi insieme agli eventi. Per abilitare la raccolta delle chiamate dei metodi, passare a Strumenti > Opzioni > IntelliTrace > Generale e selezionare Eventi IntelliTrace e informazioni sulle chiamate (solo gestite).

Le informazioni sulle chiamate non sono attualmente disponibili per le app .NET Core e ASP.NET Core.

In questo modo è possibile visualizzare la cronologia dello stack di chiamate e passare indietro e avanti tramite chiamate nel codice. IntelliTrace registra i dati, ad esempio i nomi dei metodi, i punti di ingresso e di uscita del metodo e alcuni valori dei parametri e i valori restituiti.

Suggerimento

Questa opzione non è abilitata per impostazione predefinita perché comporta un notevole sovraccarico. Non solo IntelliTrace deve intercettare ogni chiamata di metodo eseguita dall'applicazione, ma deve anche gestire un set di dati molto più ampio quando si tratta di visualizzarlo sullo schermo o renderlo persistente su disco.

È possibile ridurre il sovraccarico delle prestazioni limitando l'elenco di eventi registrati da IntelliTrace e mantenendo minimo il numero di moduli raccolti. Per ulteriori informazioni, consultare Controllare la quantità di informazioni sulle chiamate registrate da IntelliTrace.

Usare la barra di spostamento

È possibile usare la barra di spostamento visualizzata a sinistra della finestra del codice. Se la barra di spostamento non viene visualizzata, passare a Strumenti > Opzioni > IntelliTrace Avanzate e selezionare >Visualizza la barra di spostamento in modalità di debug.

La barra di spostamento consente di spostarsi avanti e indietro tramite chiamate di metodo ed eventi in modalità di debug cronologico. Per altre informazioni sul debug cronologico, vedere Debug cronologico. Include diversi comandi:

Command Description
Impostare il contesto del debugger qui Impostare il contesto di debug sull'intervallo di tempo di chiamata in cui viene visualizzato.

Questa icona viene visualizzata solo nello stack di chiamate corrente.
Torna al sito di chiamata Spostare il puntatore e riportare il contesto di debug al punto in cui è stata chiamata la funzione corrente.

Se si è in modalità debug attivo, questo comando attiva debug cronologico. Se si torna all'interruzione di esecuzione originale, il debug cronologico viene disattivato e il debug live è attivato.
Vai alla chiamata precedente oppure all'evento IntelliTrace Riportare il puntatore e il contesto di debug alla chiamata o all'evento precedente.

Se si è in modalità debug attivo, questo comando attiva debug cronologico.
Entra Passa alla funzione attualmente selezionata.

Questo comando è disponibile solo quando si è in modalità debug cronologico.
Vai alla funzione Next Call o all'evento IntelliTrace Spostare il puntatore e il contesto di debug alla chiamata o all'evento successivo per cui sono presenti i dati IntelliTrace.

Questo comando è disponibile solo quando si è in modalità debug cronologico.
Passare alla modalità dinamica Ritornare alla modalità di debug live.

Cercare una riga o un metodo in IntelliTrace

È possibile cercare metodi solo quando le informazioni sulle chiamate al metodo sono state abilitate. È possibile cercare nella cronologia IntelliTrace una linea o un metodo specifico. Mentre l'esecuzione del debugger viene interrotta, fare clic con il pulsante destro del mouse all'interno del corpo della funzione per visualizzare il menu di scelta rapida e scegliere Cerca questa line in IntelliTrace o Cerca questo metodo IntelliTrace.

Controllare quante informazioni sulle chiamate vengono registrate da IntelliTrace

Per impostazione predefinita, IntelliTrace registra le informazioni per tutti i moduli usati dalla soluzione. È possibile impostare IntelliTrace per registrare le informazioni sulle chiamate solo per i moduli di interesse. In Strumenti > Opzioni > Moduli IntelliTrace >è possibile specificare i moduli da includere o i moduli da escludere da IntelliTrace. IntelliTrace raccoglierà solo gli eventi originati dai moduli specificati e le chiamate al metodo eseguite all'interno dei moduli a cui si è interessati.

Per aggiungere più moduli, usare il carattere jolly * all'inizio o alla fine della stringa. Per i nomi dei moduli, usare nomi di file, non nomi di assembly. I percorsi dei file non vengono accettati.

Provare a mantenere minimo il numero di moduli. Si ottengono prestazioni migliori perché è necessario raccogliere meno dati. Si ottiene anche meno rumore nell'interfaccia utente perché sono presenti meno dati da attraversare.

Salvare i dati IntelliTrace nel file (C#, Visual Basic, C++)

È possibile salvare i dati raccolti da IntelliTrace in Debug > IntelliTrace Save IntelliTrace Session durante il debug e l'applicazione si trova in uno stato di interruzione>. La voce di menu è disabilitata e non sarà possibile salvare i dati raccolti da IntelliTrace se l'applicazione è ancora in esecuzione o se è stato arrestato il debug.

È possibile configurare IntelliTrace per salvare automaticamente in un file passando a Strumenti > Opzioni > IntelliTrace > Avanzate e selezionando Archivia registrazioni IntelliTrace in questa directory. È anche possibile configurare una dimensione del set per il file generato, che fa sì che IntelliTrace scriva i dati meno recenti quando esaurisce lo spazio. Visual Studio crea due file per ogni sessione di IntelliTrace quando vengono salvati automaticamente e il processo di hosting di Visual Studio (vshost.exe) è attivato.

Suggerimento

Per risparmiare spazio su disco, disattivare il salvataggio automatico dei file quando non sono più necessari. Eventuali file esistenti non verranno eliminati. È sempre possibile salvare in file su richiesta dal menu di scelta rapida.

Quando si salvano i dati di IntelliTrace nel file, si ottiene un file con estensione itrace per ogni processo da cui IntelliTrace è stato raccolto. È quindi possibile aprire il file .itrace in Visual Studio passando a File > Apri > file e selezionando il file con estensione itrace dalla finestra di dialogo Apri file. Per altre informazioni, vedere Uso dei dati IntelliTrace salvati.

Blogs

IntelliTrace in Visual Studio Enterprise 2015

IntelliTrace in Visual Studio Enterprise 2015 supporta ora il collegamento.

Raccogliere dati da un servizio Windows usando l'agente di raccolta autonomo IntelliTrace

Modifica del piano di raccolta IntelliTrace

TraceSource personalizzato e debug con IntelliTrace

Forum

Visual Studio Debugger