Compartilhar via


Como: anexar o Profiler para um serviço nativo para coletar dados de simultaneidade, usando a linha de comando

Este tópico descreve como usar Visual Studio ferramentas para traçar perfil de linha de comando de ferramentas para anexar o profiler a um serviço () C/C++ nativo e para coletar dados de simultaneidade o processo e de segmento usando o método de amostragem.

ObservaçãoObservação

Os recursos avançados de segurança no windows 8 e Windows Server 2012 necessárias alterações significativas de forma que o profiler do Visual Studio coleta dados em essas plataformas.Os apps de armazenamento do windows também requerem novas técnicas de coleção.Consulte Criando perfis de aplicativos do Windows 8 e Windows Server 2012.

ObservaçãoObservação

Ferramentas de linha de comando de ferramentas para estão localizadas no subdiretório \ ferramentas de equipe \ ferramentas de desempenho o diretório de instalação de Visual Studio .Em os computadores de 64 bits, de 64 bits e em versões de 32 bits de ferramentas está disponível.Para usar o profiler em um prompt de comando, você deve adicionar o caminho para a variável de ambiente PATH da janela de Prompt de comando ou o comando próprio tools.Para obter mais informações, consulte Especificando o caminho para a criação de perfil de ferramentas de linha de comando.

Quando o profiler é anexado ao serviço, você pode pausar e continuar a coleção de dados.Para finalizar a uma sessão, o profiler não deve ser anexado ao serviço, e o profiler deve ser explicitamente fechado.

Anexando o profiler

Para anexar o profiler a um serviço nativo, você usa VSPerfCmd/start e opções de /attach inicializar o profiler e anexá-la ao aplicativo de destino.Você pode especificar /start e /attach e suas respectivas opções em uma única linha de comando.Você também pode adicionar a opção de /globaloff pausar a coleção de dados no início do aplicativo alvo.Você usa em /globalon para iniciar a coletar dados.

Para anexar o profiler a um serviço nativo

  1. Se o serviço não estiver, inicia executando o serviço.

  2. Ligue o profiler digitando o seguinte no prompt de comando:

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

    • A opção de /output**:**OutputFile é necessária com /start.OutputFile especifica o nome e o local de dados a .vsp () autônomos.

    Você pode usar qualquer opção na tabela com a opção de /start.

    ObservaçãoObservação

    A maioria dos serviços requer a opção de /user e de /crosssession .

    Opção

    Descrição

    /user:[Domain\UserName]

    Especifica o domínio e o nome da conta de usuário opcionais para ter acesso concedido ao profiler.

    /crosssession

    Permite analisar os processos em outras sessões de logon.

    /wincounter:WinCounterPath

    Especifica o windows que o desempenho ao contrário de é 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 valor padrão é 500.

    /events:Config

    Especifica um rastreamento de evento para o evento do windows (ETW) é coletado durante a análise.Os eventos de ETW são coletados em um arquivo separado .etl ().

  3. Anexar o profiler para o serviço digitando o seguinte comando em um prompt de comando:

    **VSPerfCmd /attach:**PID

    PID especifica o nome de identificação de processo ou do processo do aplicativo alvo.Você pode exibir os IDs do processo de todos os processos em execução no gerenciador de tarefas do windows.

Coleta de dados de controle

Quando o aplicativo alvo executar, você pode controlar a coleção de dados inicial e parar a escrita de dados para o arquivo com opções de VSPerfCmd.exe.Controlando a coleção de dados, você pode coletar dados para uma parte específica de execução do programa, como inicia ou termina do aplicativo.

Para iniciar e parar a coleção de dados

  • Os pares de opções na tabela a seguir começam e param a coleção de dados.Especifique cada opção em uma linha separada de comando.Você pode desativar a coleção de dados em e várias vezes.

    Opção

    Descrição

    /globalon /globaloff

    Inicia/globalon() ou coleção de dados paradas de/globaloff() para todos os processos.

    /processon:PID/processoff:PID

    Inicia/processon() ou para a coleção de dados (de/processoff) para o processo que a identificação de processo ()PIDespecificar.

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

    Inicia de/attach para coletar dados para o processo que a identificação de processo (PID) ou o nome do processo ()ProcNameespecificam./detach para coleta de dados para o processo especificado ou para todos os processos se nenhum processo é especificado.

  • Você também pode usar a opção de VSPerfCmd.exe/mark insira uma marca para no arquivo de dados.o comando de /mark adiciona um identificador, um carimbo de data/hora, e uma cadeia de caracteres de texto definido pelo usuário opcional.As marcas podem ser usadas para filtrar os dados nos relatórios profiler e em modos de exibição de dados.

Terminando à sessão

Para finalizar a uma sessão, o profiler não deve coletar dados.Você pode parar de coletar dados de um serviço nativo que está sendo analisado com o método de simultaneidade parando o serviço ou invocando a opção de VSPerfCmd /detach .Você chama a opção de VSPerfCmd /shutdown desativar o profiler e feche o arquivo de dados para.

Para finalizar a uma sessão

  1. Desanexar o profiler do aplicativo alvo parando o serviço ou digitando o seguinte comando em um prompt de comando:

    Digite VSPerfCmd /detach

  2. Feche o profiler digitando o seguinte comando em um prompt de comando:

    VSPerfCmd/shutdown