Como instrumentar um aplicativo Web do ASP.NET compilado estaticamente e coletar dados de memória usando a linha de comando do criador de perfil
Este tópico descreve como usar as ferramentas de linha de comando Ferramentas de Criação de Perfil do Visual Studio para instrumentar um site ou componente Web pré-compilado do ASP.NET e coletar alocação de memória .NET, tempo de vida do objeto e dados de intervalo detalhados.
Observação |
---|
Ferramentas de linha de comando das Ferramentas de Criação de Perfil estão localizadas no subdiretório \Team Tools\Performance Tools do diretório de instalação Visual Studio.Nos computadores de 64 bits, ambas as versões de 64 bits e de 32 bits das ferramentas está disponível.Para usar as ferramentas de linha de comando do criador de perfis, você deve adicionar o caminho das ferramentas para a variável de ambiente PATH da janela prompt de comando ou adicioná-lo ao próprio comando.Para obter mais informações, consulte Especificando o caminho para ferramentas de linha de comando de ferramentas de criação de perfil. |
Para coletar dados de um componente Web ASP.NET usando o método de instrumentação, você usa a ferramenta VSInstr.exe para gerar uma versão instrumentada do componente.No computador que hospeda o componente, você substitui a versão não instrumentada do componente pela versão instrumentada.Você usa a ferramenta de VSPerfCLREnv.cmd para inicializar variáveis de ambiente a globais e para reiniciar o computador host.Inicie o criador de perfis.
Durante a execução do componente instrumentado, os dados do tempo são coletados automaticamente em um arquivo de dados.Você pode pausar e retomar a coleção de dados durante a sessão de criação de perfis.
Para encerrar uma sessão de criação de perfil, você fecha o processo de trabalho do ASP.NET que hospeda o componente e desliga explicitamente o criador de perfil.Na maioria dos casos, recomendamos limpar as variáveis de ambiente ao final de uma sessão.
Começando a analisar
Para instrumentar um componente Web ASP.NET e iniciar a criação de perfil
Use a ferramenta VSInstr para gerar uma versão instrumentada do aplicativo de destino.Se necessário, substitua os binários do aplicativo no computador host do ASP.NET pelos binários instrumentados.
Abra uma janela de prompt de comando
Inicialize as variáveis do ambiente de perfil .NET.Em uma janela de prompt de comando, digite:
VSPerfClrEnv /globaltracegc
- ou -
VSPerfClrEnv /globaltracegclife
/globaltracegc coleta dados de tempo e alocação de memória do .NET.
/globaltracegclife coleta dados detalhados de tempo, vida útil do objeto e alocação de memória do .NET.
Reinicie o computador.
Abra uma janela de prompt de comando.
Inicie o criador de perfis.Em uma janela de prompt de comando, digite:
**VSPerfCmd/start:trace/output:**OutputFile [Options]
A opção /start:trace inicializa o criador de perfis.
A opção /output**:**OutputFileé necessária com /startOutputFile especifica o nome e o local dos dados de perfil (.vsp).
Você pode usar qualquer uma das seguintes opções com a opção /start:trace.
Observação Geralmente, as opções /user e /crosssession são necessárias para aplicativos do ASP.NET.
Opção
Descrição
/user:[Domain\]UserName
Especifica o domínio opcional e o nome do usuário da conta que possui o processo de trabalho do ASP.NET.Essa opção será necessária se o processo estiver sendo executado como um usuário que é diferente do usuário conectado. O nome é listado na coluna Nome de Usuário, na guia Processos do Gerenciador de Tarefas do Windows.
Permite analisar os processos em outras sessões.Essa opção será necessária se o aplicativo estiver sendo executado em uma sessão diferente.A ID da sessão é listada na coluna ID da sessão na guia de processos do gerenciador de tarefas do Windows./CS pode ser especificado como uma abreviação para /crosssession.
/wincounter:WinCounterPath
Especifica o contador de desempenho do Windows que será coletado durante a análise.
/automark:Interval
Uso com /wincounter somente.Especifica o número de milissegundos entre eventos de coleção contador de desempenho do Windows.O padrão é 500 ms.
/events:Config
Especifica um rastreamento de evento para evento do Windows (ETW) para ser coletado durante a análise.Os eventos de ETW são coletados em um arquivo separado (.etl).
Para iniciar o criador de perfis com a coleção de dados pausada, adicione a opção de /globaloff à linha de comando /start.Use /globalon para continuar a criação de perfis.
Abra o site que contém o componente instrumentado.
Coleta de dados de controle
Durante a execução do aplicativo de destino, é possível controlar a coleção de dados iniciando e interrompendo a gravação de dados no arquivo usando as opções de VSPerfCmd.exe.A coleta de dados de controle permite que você colete dados para uma parte específica de execução do programa, como o inicio ou término do aplicativo.
Para iniciar e parar a coleção de dados
Os seguintes pares de opções iniciam e interrompem a coleção de dados.Especifique cada opção em uma linha separada de comando.É possível desativar e ativar a coleção de dados várias vezes.
Opção
Descrição
Inicia (/globalon) ou para (/globaloff) a coleção de dados para todos os processos.
/processon:PID/processoff:PID
Inicia (/processon) ou interrompe a coleta de dados (/processoff) para o processo especificado pelo ID de processo (PID).
/threadon:TID/threadoff:TID
Inicia (/threadon) ou interrompe a coleta de dados do thread (/threadoff) para o thread especificado por ID de threads (TID).
Finalizando a sessão de análise
Para encerrar uma sessão de criação de perfil, feche o aplicativo Web ASP.NET e, em seguida, use o comando IISReset do IIS (Serviços de Informações da Internet) para fechar o processo de trabalho do ASP.NET.Chame a opção VSPerfCmd /shutdown para desativar o criador de perfis e fechar o arquivo de dados de análise.O comando VSPerfClrEnv /globaloff apaga as variáveis de ambiente de criação de perfis.Você deve reiniciar o computador para que as novas configurações de ambiente sejam aplicadas.
Para finalizar uma sessão de criação de perfil
Feche o aplicativo da Web ASP.NET.
Feche o processo de trabalho ASP.NET.Tipo:
IISReset /stop
Encerrar o criador de perfis.Tipo:
VSPerfCmd/shutdown
(Opcional).Limpe as variáveis do ambiente de análise.Tipo:
VSPerfCmd /globaloff
Reinicie o computador.Se necessário, reinicie o IIS.Tipo:
IISReset /start
Consulte também
Conceitos
Criação de perfil de linha de comando dos aplicativos Web do ASP.NET
Outros recursos
Exibições de dados da memória do .NET das ferramentas de criação de perfil