Caricamento dei simboli

È possibile impostare le preferenze utente seguenti in Windows analizzatore prestazioni (WPA):

  • Carica simboli

  • Configurare i percorsi dei simboli

Per modificare queste opzioni, aprire una registrazione e quindi selezionare l'opzione nel menu Traccia .

Simboli gestiti

Le risoluzioni dei simboli e gli stack per i processi gestiti sono supportati nei sistemi seguenti:

  • Con .NET Framework 4.5 o versione successiva in Windows 8 o versione successiva

  • Con .NET Framework 4.0 o una versione successiva nei computer x86

Quando si acquisisce una traccia usando WPR, WPR consente a tutti i provider necessari per risolvere i simboli gestiti nella traccia. WPR crea una cartella accanto alla traccia salvata che contiene file PDB di questi simboli gestiti. Quando WPA apre la traccia, WPA cerca questa cartella e lo aggiunge automaticamente al percorso del simbolo. Se WPR non è stato usato per generare la traccia, eventuali simboli per i programmi .NET Framework potrebbero non decodificare completamente o decodificare completamente.

Simboli JavaScript

La risoluzione dei simboli e gli stack per i processi JavaScript sono supportati nei sistemi che eseguono il software seguente:

  • Windows 7 insieme a Internet Explorer 10 o versione successiva

  • Applicazioni che usano JavaScript in Windows 8

WP consente ai provider necessari di decodificare i simboli per il codice JavaScript nei sistemi supportati. Gli indirizzi e i frame dello stack del metodo JavaScript decodificano un nome file JavaScript, il nome del metodo, il numero di riga e il numero di colonna.

Percorsi relativi e variabili di ambiente incorporate

Le variabili di ambiente _NT_SYMBOL_PATH e _NT_SYMCACHE_PATH possono usare percorsi relativi, percorsi assoluti, percorsi di condivisione di rete o variabili di ambiente incorporate. WPA converte i percorsi relativi in percorsi assoluti quando si impostano prima i percorsi relativi. WPA converte i percorsi relativi caricati da WPA dalle variabili di ambiente all'avvio del programma.

WPA converte i percorsi relativi immessi nella finestra di dialogo Configura percorsi simboli quando si chiude la finestra di dialogo. Le modifiche apportate alla directory corrente non influiscono sui percorsi relativi già impostati. La finestra di dialogo Configura percorsi simboli mostra i percorsi attualmente impostati quando si apre prima la finestra di dialogo in modo che sia possibile visualizzare il modo in cui WPA ha espanso tutti i percorsi relativi.

WPA espande le variabili di ambiente incorporate nello stesso momento in cui espande i percorsi relativi. Poiché WPA acquisisce le variabili di ambiente all'avvio del programma, le modifiche alle variabili di ambiente esterne a un'istanza attualmente in esecuzione di WPA non vengono visualizzate in tale istanza.

Altri programmi che usano la variabile di ambiente _NT_SYMCACHE_PATH , ad esempio WinDbg o Microsoft Visual Studio, potrebbero non gestire percorsi relativi o variabili di ambiente incorporate nello stesso modo.

Percorso SymCache

WPA usa i file SymCache per memorizzare nella cache le informazioni sui simboli dai file PDB (Program Database) in modo compatto e facile da accedere. Dopo che WPA popola una cartella SymCache con i simboli per una traccia, ricaricando i simboli per tale traccia è molto più veloce. Se un file SymCache diventa troppo grande o non è più necessario, è possibile eliminare in modo sicuro il file SymCache. WPA ripopola la cartella SymCache con nuovi file in base alle esigenze. È anche possibile copiare i file SymCache in un altro computer o condividere i file in una rete per accelerare il caricamento dei simboli in computer diversi.

Se si usa la finestra di dialogo Configura percorsi simboli per impostare la variabile di ambiente _NT_SYMCACHE_PATH su una cartella a cui WPA non può accedere, il pulsante OK non chiude la finestra di dialogo. Tuttavia, non viene visualizzato un messaggio di errore.

Se la variabile di ambiente _NT_SYMCACHE_PATH non è assegnata o vuota, WPA crea una cartella SymCache nella radice dell'unità che contiene il file eseguibile WPA. Se la variabile di ambiente _NT_SYMCACHE_PATH è in esecuzione in una condivisione di rete, la variabile crea una cartella SymCache nella radice dell'unità contenente la cartella Programmi. di solito, l'unità C.

Esempi di SymCache

Il comando seguente inserisce il file SymCache nella cartella C:\SymCache :

C:\SymCache

Il comando seguente inserisce il file SymCache nella cartella C:\SymCache, cerca la cartella \\network\SymCache per i simboli e quindi elabora la variabile di ambiente _NT_SYMBOL_PATH :

C:\SymCache*\\network\SymCache

In questo esempio vengono copiati tutti i simboli trovati nell'esempio nella cartella \\network\SymCache nella cartella C:\SymCache . Ciò consente all'utente di creare una cartella SymCache di grandi dimensioni e quindi copiare solo i file necessari per una traccia specifica nella cartella designata.

Per cercare più cartelle SymCache alternative, aggiungere le cartelle al percorso di ricerca usando un separatore asterisco (*) . Quando WPA trova un file SymCache in una delle posizioni alternative, WPA copia il file solo nella prima cartella SymCache nel percorso. WPA inserisce anche i file SymCache appena creati nella prima cartella SymCache nel percorso.

Per disabilitare la copia e la scrittura, ma usare ancora la funzionalità di ricerca gerarchica, è consigliabile lasciare la prima posizione nel percorso vuoto, come illustrato nell'esempio seguente:

*\\network\SymCache

Quando si esegue questo comando, WPA cerca la cartella \\network\SymCache . Tuttavia, WPA non copia i risultati o scrive i file SymCache generati in una cartella diversa.

Percorso simbolo

Per informazioni di base sulla variabile di ambiente _NT_SYMBOL_PATH , vedere gli articoli MSDN seguenti:

Il caricamento dei simboli in WPA dipende dai percorsi specificati dalla variabile di ambiente _NT_SYMBOL_PATH (esclusi i simboli già memorizzati nella cache nella cartella SymCache). WPA cerca i percorsi in sequenza, a partire da sinistra. Tuttavia, il caricamento dei simboli da un file PDB in uno di questi percorsi può richiedere molto tempo, soprattutto se il PDB esiste in un computer remoto. È quindi consigliabile inserire i percorsi di rete dopo tutti i percorsi locali e usare una cache PDB locale per qualsiasi server simbolo remoto. Tuttavia, anche se tutti i simboli vengono archiviati in locale, WPA può diventare non risponde durante il tempo in cui carica i simboli. WPA torna a uno stato interattivo al termine del caricamento dei simboli.

Quando la variabile di ambiente _NT_SYMBOL_PATH non è impostata, WPA usa il valore predefinito seguente:

 .;SRV*\Symbols*https://msdl.microsoft.com/download/symbols;

Punti e virgola (;) separare i diversi percorsi. Il primo percorso è il punto (.). WPA esegue il mapping di questo percorso alla cartella corrente quando WPA carica la traccia. Per altre informazioni sul modo in cui WPA elabora i percorsi relativi, vedere la sezione Percorso SymCache di questo articolo.

Il secondo percorso è il seguente:

 SRV*\Symbols*https://msdl.microsoft.com/download/symbols

È anche necessario impostare il percorso NGEN PB:

set _NT_SYMBOL_PATH=srv*C:\Symbols.NGEN;srv*https://msdl.microsoft.com/download/symbols

Quando si specifica questo percorso, WPA scarica i simboli dal server dei simboli pubblici Microsoft e memorizza nella cache i file PDB nella cartella \Symbols (questa cartella è relativa alla cartella di installazione di Windows Performance Toolkit). Pertanto, WPA inserisce la cartella Simboli accanto alla cartella SymCache. Tuttavia, se la cartella SymCache si trova in una condivisione di rete, WPA crea la cartella Simboli nella radice dell'unità che contiene la cartella Programmi. di solito, l'unità C.

Se non si desidera cercare e caricare i simboli dai file PDB, è possibile impostare la variabile di ambiente _NT_SYMBOL_PATH su una cartella locale che non contiene simboli, ad esempio un punto (.). Non lasciare vuota la variabile di ambiente _NT_SYMBOL_PATH . Se si lascia vuota la variabile di ambiente _NT_SYMBOL_PATH , WPA usa il valore predefinito.

Quando WPA apre una registrazione, WPA cerca una cartella con lo stesso nome della traccia che usa l'estensione .ngenpdb . Se WPA trova questa cartella, WPA aggiunge la cartella alla fine della variabile di ambiente _NT_SYMBOL_PATH . Windows Performance Recorder (WPR) crea automaticamente una cartella che contiene file PDB per il codice gestito acquisito da WPR durante la registrazione. Ad esempio, se si apre la registrazione C:\trace.etl in WPA, WPA cerca la cartella C:\trace.etl.ngenpdb . Se questa cartella esiste, WPA aggiunge la cartella alla variabile di ambiente _NT_SYMBOL_PATH .

Funzionalità DI WPA

Caricare i simboli o configurare i percorsi dei simboli

Uso del supporto PDB di CLR 4.0

Problemi comuni di analisi In-Depth