Criando uma captura de Dump de Memória (Via Terminal)

761 Visualizações
5, janeiro de 2022
David Portela

Visão Geral

Esta documentação visa ensinar a realizar a captura de dumps de memória, via terminal, utilizando o software “.Net Memory Profiler”, que é indicado para aplicações .net.

Esta captura é recomendada em casos de suspeita de vazamento de memória.

Instalação do aplicativo

Para realização da coleta do dump, será necessário utilizar o software “.Net Memory Profiler”.
Download: http://memprofiler.com/download.aspx.

Observação: A instalação do software é básica, basta ir passando as etapas de instalação. Não há nenhuma configuração neste momento.

Instruções da captura do Dump

1° – Abra um prompt de comando como administrador:

 

2° –  No prompt acesse o diretório do .Net Memory profiler, por default o mesmo estará em “C:\Program Files\SciTech\NetMemProfiler5”.
Comando do prompt: cd C:\Program Files\SciTech\NetMemProfiler5

 

3° – Abra o gerenciador de tarefas e identifique o PID  do processo que está com suspeita de vazamento de memória, neste exemplo, utilizaremos o processo IPExternalService.
Observação: Utilizaremos o PID, pois os processos do Tactium possuem todos os mesmo nome W3WP.exe. O PID é um valor único.

 

4° – Após a identificação do PID do processo da aplicação, iremos utilizar o comando de chamada do software para captura do(s) dump(s).
No nosso exemplo o comando utilizado será este:
NmpCore /a 10888 /cs1 /sf “C:/DumpExternal”


NmpCore: Chamada do comando.
/a: Nome do processo ou PID do processo.
/cs1: Número de dumps a ser realizado, no nosso caso 1.
/sf: Diretório onde o dump será realizado /nome do arquivo.

Observação: Caso deseje realizar mais de um dump, deverá ser adicionada a tag /ac informando o intervalo de tempo entre os dumps.
Por exemplo, desejamos realizar 3 dumps com intervalo de 5 minutos entre os mesmo:
NmpCore /a 10888 /cs1 /ac5 /sf “C:/DumpExternal”

 

5° – Após a execução do comando o arquivo de dump será gerado no diretório indicado no mesmo:

 

Documentação do software .Net Memory Profiler:
https://memprofiler.com/online-docs/nmpcore/thenmpcoretool.html
https://memprofiler.com/online-docs/nmpcore/startingnmpcore.html
https://memprofiler.com/online-docs/nmpcore/commandlineexamples.html

 

 


Este conteúdo foi útil para você?
50% LikesVS
50% Dislikes