Como registrar processos ao longo do dia de trabalho?

13

Basicamente, eu quero acompanhar quais processos estão sendo executados e sua porcentagem de CPU ao longo do dia para identificar o congelamento e a lentidão aleatórios. Eu gostaria de entrar em um arquivo de texto e ver um log dos processos dos dias anteriores, ou algo nesse sentido.

trail_runner
fonte

Respostas:

11

GUI: Process Monitor pode fazer isso.

  • Filtre apenas o perfil e verifique se ele descarta eventos filtrados, caso contrário sua memória será preenchida.
  • Certifique-se de configurar um arquivo de backup, caso contrário sua memória será preenchida.
  • Tente diminuir também o intervalo de criação de perfil para poupar memória.
  • Você terá que salvar isso sozinho.

CLI: XPerf do Windows Performance Toolkit no Windows SDK também pode fazer isso.

  • Deve ser iniciado e interrompido através da linha de comando com um amplo conjunto de parâmetros disponíveis para que você possa registrar o que quiser, permitindo automatizá-lo com um script de logon e logoff, para que você possa iniciar quando efetuar login e parar quando desligar.
  • Certifique-se de registrar apenas a atividade da CPU, caso contrário seu disco será preenchido.
  • Novamente, tente diminuir o intervalo de criação de perfil, se possível, ou seu disco será preenchido.
  • Com o XPerfView, você pode abrir o rastreio e terá um gráfico que pode ser analisado em detalhes.
  • Esta ferramenta não é para os fracos de coração, não deixe de pesquisar artigos e ler a documentação.

Iniciar, parar (e, assim, salvar) e visualizar ficará assim:

XPerf -on PROFILE -SetProfInt 5000000
XPerf -d C:\Path\To\Save\The\Trace\To.etl
XPerf C:\Path\To\Save\The\Trace\To.etl 

As unidades de SetProfInt são intervalos de tempo de 100 nanossegundos ou dez milésimos de milissegundo. O padrão fará o perfil da CPU a cada milissegundo e o exemplo acima fará o perfil a cada 500 milissegundos.

Você pode ler a documentação xperfinterna digitando apenas se precisar de ajuda sobre algo realmente específico; se quiser obter uma visão rápida do que o XPerf faz, consulte este vídeo . Você pode pular a parte em que ele está executando o aplicativo e enviar o rastreamento; as partes mais importantes são aquelas em que ele está no console ou no aplicativo de visualização.


Embora um pouco não relacionado, o Process Lasso pode ajudá-lo a lidar com a lentidão ...

Você pode configurá-lo para diminuir a prioridade dos processos em segundo plano, para que seu sistema permaneça responsivo.

Captura de tela das configurações do ProBalance

Tamara Wijsman
fonte
"Certifique-se de configurar um arquivo de apoio, caso contrário sua memória será preenchida." Por padrão, o Process Monitor usará o arquivo de paginação como armazenamento de suporte. A menos que você tenha desativado, é claro.
Hello71
Sim, mas o arquivo de paginação pode não ser suficiente para manter todos os dados no final longo, se tiver um tamanho constante, as tabelas de páginas podem ficar muito grandes se você tiver um com tamanho dinâmico.
Tamara Wijsman