Como: instrumento um.NET Service e o tempo detalhado de coletar dados usando a linha de comando do Profiler
Este tópico descreve como usar Visual Studio Premium ferramentas para traçar perfil de linha de comando de ferramentas para instrumentar um serviço de .NET Framework e para coletar dados de temporização detalhado.
Observação |
---|
Você não pode analisar um serviço com o método de instrumentação se o serviço não pode ser reiniciado depois que inicia o computador, tal serviço que inicia somente quando o sistema operacional começa. Ferramentas de linha de comando das Ferramentas de Perfil estão localizadas no subdiretório \Team Tools\Performance Tools do sub-diretório do diretório de instalação Visual Studio.Nos computadores de 64 bits, de 64 bits e versões de 32 bits de ferramentas está disponível.Para usar as ferramentas de linha de comando do visual profiler, você deve adicionar o caminho de ferramentas para a variável de ambiente PATH da janela do prompt de comando ou adicioná-lo ao comando próprio.Para obter mais informações, consulte Especificando o caminho para a criação de perfil de ferramentas de linha de comando. Adicionar dados de interação de camada a analisar executado requer procedimentos específicos com a linha de comando ferramentas para traçar perfil.Consulte Adicionando dados de interação entre camadas da linha de comando. |
Para coletar dados de temporização detalhado de um serviço de .NET Framework usando o método de instrumentação, você usa a ferramenta de VSInstr.exe para produzir uma versão provida do componente.Você substitui a versão não provida de serviço com a versão provida, certificando-se que o serviço está configurado para iniciar manualmente.Você usa a ferramenta de VSPerfCLREnv.cmd para inicializar variáveis de ambiente a globais e para reiniciar o computador host. Você inicia o profiler.
Quando o serviço é iniciado, os dados de tempo são coletados automaticamente a um arquivo de dados.Você pode pausar e continuar a coleção de dados durante a sessão para analisar.
Para finalizar a uma sessão, você desative o serviço e então explicitamente fecha o profiler.Na maioria dos casos, recomendamos desmarque as variáveis de ambiente a no final de uma sessão.
Iniciando o aplicativo com o profiler
Para iniciar analisar um serviço do .NET Framework
Abra uma janela de prompt de comando.
Use a ferramenta de VSInstr para produzir uma versão provida de binário de serviço.
Substitua o binária original com a versão provida.No gerenciador de controle de serviço do Windows, certifique-se de que o tipo de inicialização de serviço é definido para o manual.
Inicializar .NET Framework que analisa variáveis de ambiente.Tipo:
VSPerfClrEnv /globaltraceon
Reinicie o computador.
Abra uma janela de prompt de comando.
Ligue o profiler.Tipo:
**VSPerfCmd /start:trace /output:**OutputFile[Options]
A opção de /start:trace inicializa o profiler.
A opção de /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 de /start:trace .
Observaçã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 de usuário da conta que possui o processo analisado.Essa opção é necessária somente se o processo está sendo executado como um usuário diferente do usuário conectado.O proprietário do processo é listado na coluna do nome de usuário na guia dos processos do gerenciador de tarefas do Windows.
Permite analisar os processos em outras sessões.Essa opção é necessária se o aplicativo é executado em uma sessão diferente.A identificação da sessão é listada na coluna de identificação de sessão no guia dos processos do gerenciador de tarefas do Windows./CS pode ser especificado como uma abreviação para /crosssession.
/waitstart[:Interval]
Especifica o número de segundos para esperar o profiler para inicializar antes que retorna um erro.Se Interval não for especificado, o profiler espera indefinidamente.Por padrão, /start retorna imediatamente.
Para iniciar o profiler com coleção de dados pausou, adicione a opção de /globaloff a linha de comando de /start .Use /globalon para analisar continuar.
/counter:Config
Coleta informações de contador de desempenho do processador especificado na configuração.Informações sobre o contador é adicionada aos dados coletados na cada evento.
/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 é ms 500.
/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).
Enfie o serviço gerenciador de controle de serviço do Windows.
Coleta de dados de controle
Quando o serviço está sendo executado, você pode usar opções de VSPerfCmd.exe iniciar e parar a escrita de dados no arquivo de dados do visual profiler.A coleção de dados de controle permite que você para coletar dados para uma parte específica de execução do programa, como iniciar ou fechar o serviço.
Para iniciar e parar a coleção de dados
Os seguintes pares de opções de VSPerfCmd começam e param a coleção de dados.Especifique cada opção em uma linha separada de comando.Você pode 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 coleção de dados paradas de/processoff() para o processo especificado pela identificação de processo (PID).
/threadon:TID/threadoff:TID
Inicia (/threadon) ou coleta de dados das paradas (/threadoff) para o segmento especificado por ID de segmentos (TID).
Você também pode usar a opção VSPerfCmd.exe/mark para inserir uma marca 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 do profiler e em modos de exibição de dados.
Terminando à sessão
Para finalizar a uma sessão, interromper o serviço que está executando o componente instrumentado, e então chame a opção de VSPerfCmd/shutdown desativar o profiler e feche o arquivo de dados para analisar.O comando de VSPerfClrEnv /globaloff limpa todas as variáveis de ambiente a.
Você deve reinicie o computador para que as novas configurações de ambiente sejam aplicadas.
Para finalizar uma sessão
Interromper o serviço do Gerenciador de Controle de Serviços.
Feche o profiler.Tipo:
VSPerfCmd /shutdown
Quando você tiver terminado qualquer analisar, desmarque as variáveis de ambiente a.Tipo:
VSPerfClrEnv /globaloff
Substitua o módulo instrumentado com o original.Se necessário, reconfigurar o tipo de inicialização de serviço.
Reinicie o computador.
Consulte também
Conceitos
Criação de perfil de linha de comando dos serviços