Compartilhar via


Como anexar o criador de perfil a um serviço do .NET para coletar estatísticas do aplicativo usando a linha de comando

Este tópico descreve como usar as ferramentas de linha de comando de Visual Studio Ferramentas de Criação de Perfil para anexar o profiler para um serviço do.NET Framework e para coletar estatísticas de desempenho usando o método de amostragem.

ObservaçãoObservação

Os recursos avançados de segurança no Windows 8 e Windows Server 2012 necessitaram de alterações significativas na forma que o profiler do Visual Studio coleta dados dessas plataformas.Os aplicativos da Windows Store também requerem novas técnicas de coleção.Consulte Criando perfil de aplicativos do Windows 8 e do Windows Server 2012.

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.

A adição de dados de interação da camada à execução de criação de perfil requer procedimentos específicos com ferramentas de criação de perfil de linha de comando.Consulte Adicionando dados de interação entre camadas da linha de comando.

Para coletar dados de desempenho do serviço do.NET Framework, você deve usar a ferramenta de VSPerfCLREnv.cmd para inicializar as variáveis de ambiente apropriadas.Você deve reiniciar o computador que hospeda o serviço e configurar esse computador para analisar.Você anexa o profiler para o processo do serviço.Quando o profiler for anexado ao serviço, você pode pausar e retomar a coleta de dados.

Para terminar uma sessão, analisando o profiler deverá ser desanexado do serviço e o profiler deverá ser explicitamente fechada.Na maioria dos casos, recomendamos limpar as variáveis de ambiente ao final de uma sessão.

Anexando o criador de perfis

Para anexar o criador de perfis a um serviço do .NET Framework

  1. Instalar o serviço.

  2. Abra uma janela de prompt de comando.

  3. Inicialize as variáveis do ambiente do perfil.Tipo:

    VSPerfClrEnv /globalsampleon [/samplelineoff]

    • /globalsampleon permite a amostragem.

    • /samplelineoff desativa a atribuição de dados coletados a linhas de código específicas da fonte.Quando essa opção é especificada, os dados são atribuídos somente a funções.

  4. Reinicie o computador.

  5. Abra uma janela de prompt de comando.

  6. Inicie o criador de perfis.Tipo:

    VSPerfCmd /start:sample /output**:**OutputFile[Options]

    • A opção /start:sample inicializa o criador de perfis.

    • A opção **/output:**OutputFile é necessária com /start.OutputFile 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:sample.

    ObservaçãoObservação

    As opções de /user e de /crosssession geralmente são necessárias para serviços.

    Opção

    Descrição

    /user:[Domain\]UserName

    Especifica o domínio e o nome do usuário da conta que possui o processo com perfil.Essa opção é necessária somente se o processo estiver sendo executado como um usuário diferente do usuário conectado.O proprietário do processo é listado na coluna de nome de usuário na guia de processos do gerenciador de tarefas do Windows.

    /crosssession

    Permite analisar os processos em outras sessões.Essa opção é necessária se o serviço 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).

  7. Se necessário, inicie o serviço.

  8. Anexa o criador de perfis ao serviço.Tipo:

    VSPerfCmd /attach: {PID|ProcName} [Sample Event] [/targetclr**:**Version]

    • Especifique a ID do processo (PID) ou o nome do processo (ProcName) do serviço.Você pode exibir os IDs e os nomes de todos os processos em execução no Gerenciador de Tarefas do Windows.

    Por padrão, os dados de desempenho são provados a cada 10.000.000 ciclos de relógio não paralisado do processador.Este é de aproximadamente 100 por segundo dos exemplos em um processador 1GH.Você pode especificar uma das seguintes opções para alterar o intervalo do ciclo de relógio ou especificar um evento diferente da amostragem.

    Evento de exemplo

    Descrição

    /timer:Interval

    Altera o intervalo de amostragem ao número de ciclos de formato não paralisados especificados por Interval.

    /pf[:Interval]

    Altera o evento de amostragem para falhas de página.Se Interval for especificado, ele define o número de falhas de páginas entre as amostras.O padrão é 10.

    /sys[:Interval]

    Altera o evento de amostragem para chamadas de sistema do processo para o kernel do sistema operacional (syscalls).Se Interval for especificado, ele define o número de chamadas entre as amostras.O padrão é 10.

    /counter:Config

    Altera o evento e o intervalo para o contador de desempenho de processador e o intervalo de amostragem especificado em Config.

    • **targetclr:**Version especifica a versão do common language runtime (CLR) para analisar quando mais de uma versão do runtime é carregada em um aplicativo.Opcional.

Coleta de dados de controle

Durante a execução do serviço, é possível usar as opções de VSPerfCmd.exe para iniciar e parar a gravação de dados no arquivo de dados do criador de perfis.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 VSPerfCmd 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

    /globalon /globaloff

    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).

    /attach:{PID|ProcName} /detach[:{PID|ProcName}]

    /attach inicia a coleção de dados para o processo especificado pelo ID do processo ou nome do processo./detach para a coleta de dados para o processo especificado ou para todos os processos se nenhum processo for especificado.

Finalizando a sessão de análise

Para terminar uma sessão, analisando o profiler deverá ser desanexado de todos os processos analisados e o profiler deverá ser explicitamente fechada.Você pode desanexar de um aplicativo analisado com o método de amostragem fechando o aplicativo ou chamando a opção de VSPerfCmd /detach .Então, você chama a opção VSPerfCmd /shutdown para desativar o criador de perfis e fechar o arquivo de dados de criação de perfil.

O comando VSPerfClrEnv /globaloff limpa todas as variáveis de ambiente, mas a configuração do sistema não é reiniciada até que o computador seja reiniciado.

Para finalizar uma sessão de criação de perfil

  1. Execute uma destas opções para desanexar o criador de perfis do aplicativo de destino:

    • Parar o serviço.

      - ou -

    • Digite VSPerfCmd /detach

  2. Encerrar o criador de perfis.Tipo:

    VSPerfCmd /shutdown

  3. (Opcional) Limpe as variáveis do ambiente do perfil.Tipo:

    VSPerfClrEnv /globaloff

  4. Reinicie o computador.

Consulte também

Conceitos

Criação de perfil dos serviços de linha de comando

Outros recursos

Exibições de dados do método de amostragem do criador de perfil