Procedura: analisi dei servizi mediante gli strumenti della riga di comando
Aggiornamento: novembre 2007
Un servizio è un programma che viene eseguito in background dal sistema operativo e fornisce supporto alle funzionalità del sistema operativo. Esempi al riguardo sono i servizi Telnet e ASP.NET. I servizi non possono essere eseguiti dall'interno di Visual Studio. L'esecuzione deve avvenire nel contesto di Gestione controllo servizi. Di conseguenza, l'analisi di un servizio non risulta semplice quanto quella di altri tipi di applicazione Visual Studio.
Nota importante: |
---|
Prima di analizzare un servizio è necessario innanzitutto installarlo. Per ulteriori informazioni, vedere Procedura: installare e disinstallare servizi. |
Per analizzare un servizio nativo è possibile utilizzare gli strumenti della riga di comando VSPerfCmd, VSInstr e VSPerfMon. Per analizzare servizi gestiti è necessario eseguire ulteriori passaggi necessari per l'impostazione dell'ambiente Common Language Runtime. Nelle procedure riportate di seguito sono illustrati i passaggi da eseguire.
Per analizzare un servizio gestito mediante campionamento
Installare il servizio. Per ulteriori informazioni, vedere Procedura: installare e disinstallare servizi.
Aprire una finestra della riga di comando. Al prompt dei comandi, eseguire il comando seguente:
c:\<path>VSPerfClrEnv /globalsampleon
In questo modo verranno impostate le variabili di ambiente necessarie per l'analisi dei servizi gestiti.
Riavviare il computer.
Utilizzare Gestione controllo servizi per accertarsi che il servizio sia in esecuzione dopo l'installazione. Per ulteriori informazioni, vedere Procedura: avviare servizi.
A questo punto, eseguire il comando seguente:
c:\<path>VSPerfCmd /start:sample /output:filename
Il profiler viene avviato in modalità campionamento. L'opzione /output consente di creare un file VSP in cui memorizzare i dati sulle prestazioni.
Nota importante: Potrebbe essere necessario includere l'opzione /USER per consentire ai client di accedere al monitor con l'account specificato.
Successivamente, eseguire il comando seguente per connettere il processo:
c:\<path>VSPerfCmd /attach:pid | name
L'opzione /attach consente di connettere il servizio mediante l'identificatore (pid) o il nome del processo (name).
Per completare la sessione, disconnettere il processo eseguendo il comando seguente:
c:\<path>VSPerfCmd /detach:pid | name
È anche possibile interrompere il servizio o il relativo processo host in un processo multiservizio.
Quindi, eseguire il comando seguente per chiudere il profiler:
c:\<path>VSPerfCmd /shutdown
L'opzione /shutdown impone allo strumento VSPerfCmd l'attesa della chiusura delle applicazioni monitorate, quindi arresta VSPerfMon.exe e attende il completamento della chiusura.
A questo punto, utilizzare il comando seguente per rimuovere le variabili di ambiente necessarie per l'analisi dei servizi gestiti:
C:\<path>VSPerfClrEnv /globaloff
Riavviare il computer.
Per analizzare un servizio gestito mediante strumentazione
Instrumentare il servizio mediante VSInstr.exe. Per informazioni al riguardo, vedere VSInstr.
Installare il servizio. Per ulteriori informazioni, vedere Procedura: installare e disinstallare servizi.
Nota: Il servizio dovrebbe essere configurato come manuale. Non verrà pertanto avviato automaticamente. L'avvio del servizio verrà eseguito nel passaggio 6.
Aprire una finestra della riga di comando. Al prompt dei comandi, eseguire il comando seguente:
c:\<path>VSPerfClrEnv /globaltraceon
In questo modo verranno impostate le variabili di ambiente necessarie per l'analisi dei servizi gestiti.
Riavviare il computer.
A questo punto, eseguire il comando seguente:
c:\<path>VSPerfCmd /start:trace /output:filename
Il profiler viene avviato in modalità strumentazione. L'opzione /OUTPUT consente di creare un file VSP in cui memorizzare i dati sulle prestazioni.
Nota importante: Potrebbe essere necessario includere l'opzione /USER per consentire ai client di accedere al monitor con l'account specificato.
Utilizzare Gestione controllo servizi per accertarsi che il servizio sia in esecuzione dopo l'installazione. Per ulteriori informazioni, vedere Procedura: avviare servizi.
Nota importante: Quando il servizio viene avviato e Performance Monitor è in esecuzione, il servizio viene connesso a Performance Monitor. Se il servizio è già in esecuzione quando viene avviato Performance Monitor, non è possibile eseguire la connessione.
Per terminare la strumentazione, interrompere il servizio.
A questo punto, eseguire il comando seguente:
c:\<path>VSPerfCmd /shutdown
L'opzione /shutdown impone allo strumento VSPerfCmd di attendere la chiusura delle applicazioni monitorate, quindi arresta VSPerfMon.exe e attende il completamento della chiusura.
A questo punto, utilizzare il comando seguente per rimuovere le variabili di ambiente necessarie per l'analisi dei servizi gestiti:
c:\<path>VSPerfClrEnv /globaloff
Riavviare il computer.