Voltar às atualizações
New releaseSep 11, 2026

ProcDump-for-Linux v3.5.3

Uma versão Linux da ferramenta ProcDump Sysinternals

Compartilhar

ProcDump Build Status

ProcDump é uma releitura para Linux e Mac da clássica ferramenta ProcDump do conjunto Sysinternals de ferramentas para Windows. O ProcDump oferece uma maneira conveniente para desenvolvedores Linux e Mac criarem core dumps de suas aplicações com base em gatilhos de desempenho. O ProcDump para Linux e Mac faz parte do Sysinternals.

ProcDump em uso

Instalação e Uso

Requisitos

  • Sistema Linux mínimo:
    • Red Hat Enterprise Linux / CentOS 7
    • Fedora 29
    • Ubuntu 16.04 LTS
    • gdb >= 7.6.1
  • Mac OS mínimo: Sierra

Instalar o ProcDump

Consulte as instruções de instalação aqui.

Compilar

Consulte as instruções de compilação aqui.

Uso

MUDANÇA IMPORTANTE Com o lançamento do ProcDump 1.3, as opções agora estão alinhadas com a versão Windows do ProcDump. Observe que a versão Mac atualmente possui um conjunto limitado de gatilhos.

Capture Usage:
   procdump [-n Count]
            [-s Seconds]
            [-c|-cl CPU_Usage]
            [-m|-ml Commit_Usage1[,Commit_Usage2...]]
            [-gcm [<GCGeneration>: | LOH: | POH:]Memory_Usage1[,Memory_Usage2...]]
            [-gcgen Generation]
            [-restrack [nodump]]
            [-sr Sample_Rate]
            [-tc Thread_Threshold]
            [-fc FileDescriptor_Threshold]
            [-sig Signal_Number1[,Signal_Number2...]]
            [-e]
            [-f Include_Filter,...]
            [-fx Exclude_Filter]
            [-mc Custom_Dump_Mask]
            [-pf Polling_Frequency]
            [-o]
            [-log syslog|stdout]
            {
             {{[-w] Process_Name | [-pgid] PID} [Dump_File | Dump_Folder]}
            }

Options:
   -n      Número de dumps a serem gravados antes de sair.
   -s      Segundos consecutivos antes de gravar o dump (padrão é 10).
   -c      Limite de CPU acima do qual criar um dump do processo.
   -cl     Limite de CPU abaixo do qual criar um dump do processo.
   -m      Limite(s) de commit de memória (MB) acima do(s) qual(is) criar dumps.
   -ml     Limite(s) de commit de memória (MB) abaixo do(s) qual(is) criar dumps.
   -gcm    [.NET] Limite(s) de memória GC (MB) acima do(s) qual(is) criar dumps para a geração ou heap especificada (padrão é uso total de memória .NET).
   -gcgen  [.NET] Criar dump quando a coleta de lixo da geração especificada iniciar e terminar.
   -restrack Ativa o rastreamento de vazamento de memória (família de APIs malloc). Se usado sem outros gatilhos, use 't' para capturar manualmente um relatório restrack. Quando usado com outros gatilhos, a opção 'nodump' pode ser usada para evitar a geração de dump e produzir apenas relatório(s) restrack.
   -sr     Taxa de amostragem ao usar -restrack.
   -tc     Limite de contagem de threads acima do qual criar um dump do processo.
   -fc     Limite de contagem de descritores de arquivo acima do qual criar um dump do processo.
   -sig    Lista separada por vírgulas de números de sinal durante os quais qualquer sinal resulta em um dump do processo.
   -e      [.NET] Criar dump quando o processo encontrar uma exceção.
   -f      Filtrar (incluir) no conteúdo de exceções .NET (separado por vírgulas). Caracteres curinga (*) são suportados.
   -fx     Filtrar (excluir) no conteúdo das pilhas de chamadas do -restrack. Caracteres curinga (*) são suportados.
   -mc     Máscara personalizada de core dump (em hex) indicando qual memória deve ser incluída no core dump. Consulte 'man core' (/proc/[pid]/coredump_filter) para opções disponíveis.
   -pf     Frequência de polling.
   -o      Sobrescrever arquivo de dump existente.
   -log    Grava rastreamento estendido do ProcDump no fluxo de saída especificado (syslog ou stdout).
   -w      Aguardar o processo especificado ser iniciado se não estiver em execução.
   -pgid   ID do processo refere-se a um ID de grupo de processos.

Rastreamento de Recursos

A opção -restrack ativa o rastreamento de recursos, permitindo o monitoramento e a geração de relatórios de quaisquer alocações de recursos que não tenham sido liberadas no momento da geração do core dump. Os resultados são salvos em um arquivo com extensão '.restrack'. Atualmente, as seguintes funções de alocação/desalocação de recursos são rastreadas:

Alocação:

  • malloc
  • calloc
  • realloc
  • reallocarray
  • mmap

Desalocação:

  • free
  • munmap

A versão Mac atualmente não implementa rastreamento de recursos.

Exemplos

Os exemplos a seguir têm como alvo um processo com pid == 1234

Categorias