Procedura: connettere il profiler a un'applicazione Web ASP.NET per raccogliere dati di concorrenza tramite la riga di comando
In questo argomento viene illustrato come utilizzare gli strumenti da riga di comando disponibili negli strumenti di profilatura di Visual Studio per connettere il profiler a un'applicazione ASP.NET e raccogliere dati di concorrenza di thread e processi.
Gli strumenti da riga di comando degli strumenti di profilatura sono contenuti nella sottodirectory \Team Tools\Performance Tools della directory di installazione di Visual Studio.Nei computer a 64 bit gli strumenti sono disponibili nelle versioni a 32 e 64 bit.Per utilizzare il profiler a un prompt dei comandi, è necessario aggiungere il percorso degli strumenti alla variabile di ambiente PATH della finestra Prompt dei comandi oppure aggiungerlo al comando stesso.Per ulteriori informazioni, vedere Specifica del percorso degli strumenti da riga di comando degli strumenti di profilatura.
Per raccogliere dati sulla concorrenza, allegare il profiler al processo di lavoro ASP.NET che ospita il sito Web.Quando il profiler è connesso all'applicazione, è possibile sospendere e riprendere la raccolta dei dati.Per terminare una sessione di profilo, è necessario che il profiler non sia più connesso all'applicazione e che venga arrestato in modo esplicito.Nella maggior parte dei casi, è necessario cancellare le variabili di ambiente di profilo alla fine di una sessione.
Connessione del profiler
Per connettere il profiler a un'applicazione ASP.NET
Avviare il profiler digitando il comando seguente:
VSPerfCmd**/start:concurrency /output:**OutputFile [Options]
L'opzione /start inizializza il profiler per raccogliere dati sui conflitti di risorse.
L'opzione /output**:**OutputFile è obbligatoria con /start.OutputFile specifica il nome e il percorso del file dei dati di profilo (vsp).
È possibile utilizzare qualsiasi opzione nella tabella seguente con l'opzione /start .
Opzione
Descrizione
/user:[Domain\]UserName
Specifica il dominio e il nome utente facoltativi dell'account per ottenere l'accesso al profiler.
Abilita il profilo dei processi in altre sessioni di accesso.
/wincounter:WinCounterPath
Specifica un contatore delle prestazioni Windows di cui raccogliere i dati durante il profilo.
/automark:Interval
Utilizzare unicamente con /wincounter.Specifica il numero di millisecondi tra gli eventi di raccolta dati del contatore delle prestazioni Windows.Il valore predefinito è 500.
/events:Config
Specifica un evento Traccia eventi per Windows (ETW) di cui raccogliere i dati durante il profilo.Gli eventi ETW vengono raccolti in un file separato con estensione etl.
Avviare l'applicazione ASP.NET nel modo usuale.
Connettere il profiler al processo di lavoro ASP.NET digitando il comando seguente:**VSPerfCmd /attach:PID [/targetclr:**Version]
PID specifica l'ID o il nome del processo di lavoro ASP.NET.È possibile visualizzare gli ID processo di tutti i processi in esecuzione in Gestione attività di Windows.
/targetclr**:**Version specifica la versione del Common Language Runtime (CLR) da profilare quando vengono caricate più versioni del runtime in un'applicazione.Questo parametro è facoltativo.
Controllo della raccolta di dati
Quando l'applicazione è in esecuzione, è possibile controllare la raccolta dei dati avviando e interrompendo la scrittura di dati nel file utilizzando le opzioni di VSPerfCmd.exe.Controllando la raccolta dei dati, è possibile raccogliere dati per una parte specifica dell'esecuzione del programma, ad esempio l'avvio o l'arresto dell'applicazione.
Per avviare e interrompere la raccolta dei dati
Le coppie di opzioni VSPerfCmd nella tabella seguente avviano e interrompono la raccolta dei dati.Specificare ogni opzione in una riga di comando separata.È possibile attivare e disattivare più volte la raccolta dei dati.
Opzione
Descrizione
Avvia (/globalon) o interrompe (/globaloff) la raccolta dei dati per tutti i processi.
/processon:PID processoff:PID
Avvia (/processon) o interrompe (/processoff) la raccolta dei dati per il processo specificato dall'ID processo (PID).
/attach avvia la raccolta di dati per il processo specificato da ID processo (PID) o da nome processo (ProcName)./detach interrompe la raccolta di dati per il processo specificato o per tutti i processi se non è specificato alcun processo.
È inoltre possibile utilizzare l'opzione VSPerfCmd.exe/mark per inserire un contrassegno di profilo nel file di dati.Il comando /mark aggiunge un identificatore, un timestamp e una stringa di testo facoltativa definita dall'utente.I contrassegni possono essere utilizzati per filtrare i dati nelle visualizzazioni dati e nei rapporti del profiler.
Fine della sessione di profilo
Per terminare una sessione di profilo, non deve essere in corso alcuna raccolta di dati.È possibile interrompere la raccolta dei dati da un'applicazione di cui viene eseguita il profilo con il metodo di concorrenza riavviando il processo di lavoro ASP.NET oppure richiamando l'opzione VSPerfCmd /detach.È quindi possibile richiamare l'opzione VSPerfCmd /shutdown per disattivare il profiler e chiudere il file dei dati di profilo.Il comando VSPerfClrEnv /globaloff cancella le variabili di ambiente di profilo, ma la configurazione del sistema non viene reimpostata finché non viene riavviato il computer.
Per terminare una sessione di profilo
Dissociare il profiler dall'applicazione di destinazione chiudendolo o digitando quanto segue a un prompt dei comandi:
VSPerfCmd /detach
Arrestare il profiler digitando il comando seguente a un prompt dei comandi:
VSPerfCmd /shutdown
Vedere anche
Concetti
Profilatura tramite riga di comando di applicazioni Web ASP.NET
Profilatura rapida di sito Web con VSPerfASPNETCmd
Cronologia delle modifiche
Data |
Cronologia |
Motivo |
---|---|---|
Dicembre, 2011 |
Passaggio VSPerfClrEnv /sampleon rimosso. |
Correzione di bug nel contenuto. |