Sysinternals

ProcDump – SysInternals

Categoría: Utilerías de Procesos
Versión: v10.11
Última actualización: 18/08/2021
Resumen: ProcDump
OS: Cliente: Windows 8.1 y superior
Servidor: Windows Server 2012 y superior

Introducción

ProcDump es una utilidad de línea de comandos cuyo propósito principal es monitorear una aplicación en busca de picos de CPU y generar volcados de memoria durante un pico que un administrador o desarrollador puede usar para determinar la causa del pico. ProcDump también incluye supervisión de ventanas colgadas (utilizando la misma definición de ventana colgada que utilizan Windows y el Administrador de tareas), supervisión de excepciones no controladas y puede generar volcados en función de los valores de los contadores de rendimiento del sistema. También puede servir como una utilidad de volcado de procesos general que se puede incrustar en otras secuencias de comandos.

ProcDump

Sintaxis (línea de comandos)

Uso de ProcDump

Captura de Uso

procdump.exe [-mm] [-ma] [-mp] [-mc Mask] [-md Callback_DLL] [-mk] 
[-n Count]
[-s Seconds]
[-c|-cl CPU_Usage [-u]]
[-m|-ml Commit_Usage]
[-p|-pl Counter_Threshold]
[-h]
[-e [1 [-g] [-b]]]
[-l]
[-t]
[-f Include_Filter, ...]
[-fx Exclude_Filter, ...]
[-o]
[-r [1..5] [-a]]
[-at Timeout]
[-wer]
[-64]
{
{{[-w] Process_Name | Service_Name | PID} [Dump_File | Dump_Folder]}
|
{-x Dump_Folder Image_File [ Argument, ...]}
}

Uso de Instalación

procdump.exe -i [Dump_Folder]
[-mm] [-ma] [-mp] [-mc Mask] [-md Callback_DLL] [-mk]
[-r]
[-at Timeout]
[-k]
[-wer]

Uso de desinstalación

procdump.exe -u

Descripción de parámetros

ParámetroDescripción
-aEvitar cortes. Requiere -r. Si el disparador hace que el objetivo se suspenda durante un tiempo prolongado debido a que se excedió el límite de volcados simultáneos, se omitirá el disparador.
-enEvitar la interrupción en el tiempo de espera. Cancele la recopilación del disparador en N segundos.
-b Trata los puntos de interrupción de depuración como excepciones (de lo contrario, ignóralos).
-c Umbral de CPU en el que crear un volcado del proceso.
-cl Umbral de CPU por debajo del cual crear un volcado del proceso.
-d Invoca la rutina de devolución de llamada de minivolcado denominada MiniDumpCallbackRoutine de la DLL especificada.
-e Escribe un volcado cuando el proceso encuentra una excepción no controlada. Incluya el 1 para crear un volcado en las excepciones de primera oportunidad
-f Filtra las excepciones de primera oportunidad. Se admiten comodines (*). Para mostrar los nombres sin volcarlos, use un filtro en blanco (“”).
-fxFiltro (excluir) en el contenido de excepciones y registro de depuración. Se admiten comodines.
-g Ejecutar como un depurador nativo en un proceso administrado (sin interoperabilidad).
-h Escribir volcado si el proceso tiene una ventana colgada (no responde a los mensajes de la ventana durante al menos 5 segundos).
-i Instale ProcDump como el depurador post mortem de AeDebug. Solo se admiten -ma, -mp, -d y -r como opciones adicionales.
-k Elimina el proceso después de la clonación (-r) o al final de la recolección de volcado
-l Muestra el registro de depuración del proceso.
-mUmbral de compromiso de memoria en MB en el que se crea un volcado.
-ma Escribe un archivo de volcado con toda la memoria del proceso. El formato de volcado predeterminado solo incluye información sobre subprocesos e identificadores.
-mc Escribe un archivo de volcado personalizado. Incluya la memoria definida por la máscara MINIDUMP_TYPE especificada (Hex).
-md Escribe un archivo de volcado de devolución de llamada. Incluya la memoria definida por la rutina de devolución de llamada MiniDumpWriteDump denominada MiniDumpCallbackRoutine de la DLL especificada.
-mk También escribe un archivo de volcado del kernel. Incluye las pilas de kernel de los subprocesos en el proceso. El sistema operativo no admite un volcado de kernel (-mk) cuando se usa un clon (-r). Cuando se utilizan varios tamaños de volcado, se realiza un volcado de kernel para cada tamaño de volcado.
-ml Activar cuando la confirmación de memoria cae por debajo del valor de MB especificado.
-mm Escribe un archivo de mini volcado (predeterminado).
-mp

Escribe un archivo de volcado con hilo e información de manejo, y toda la memoria de proceso de lectura/escritura. Para minimizar el tamaño del volcado, se buscan áreas de memoria de más de 512 MB y, si se encuentran, se excluye el área más grande. Un área de memoria es la colección de áreas de asignación de memoria del mismo tamaño. La eliminación de esta memoria (caché) reduce los volcados de Exchange y SQL Server en más del 90 %.

-n

Número de volcados para escribir antes de salir.

-o

Sobrescribir un archivo de volcado existente.

-p

Activar en el contador de rendimiento especificado cuando se supera el umbral. Nota: para especificar un contador de proceso cuando hay varias instancias del proceso en ejecución, use el ID del proceso con la siguiente sintaxis: “\Proceso(<nombre>_<pid>)\counter”

-pl

Activar cuando el contador de rendimiento cae por debajo del valor especificado.

-rVolcado usando un clon. El límite concurrente es opcional (predeterminado 1, máximo 5).
PRECAUCIÓN: un valor alto de simultaneidad puede afectar el rendimiento del sistema.
  • Windows 7: Utiliza Reflection. El sistema operativo no es compatible con -e.
  • Windows 8.0: utiliza Reflection. El sistema operativo no es compatible con -e.
  • Windows 8.1+: utiliza PSS. Se admiten todos los tipos de disparadores.
-sSegundos consecutivos antes de que se escriba el volcado (el valor predeterminado es 10).
-tEscribe un volcado cuando finaliza el proceso.
-uTrata el uso de la CPU en relación con un solo núcleo (usado con -c).
Como única opción, desinstala ProcDump como depurador post mortem.
-wEspere a que se inicie el proceso especificado si no se está ejecutando.
-werPoner en cola el volcado (más grande) en el Informe de errores de Windows.
-xInicia la imagen especificada con argumentos opcionales. Si se trata de una aplicación o paquete de tienda, ProcDump se iniciará en la siguiente activación (solo).
-64Por defecto, ProcDump capturará un volcado de 32 bits de un proceso de 32 bits cuando se ejecuta en Windows de 64 bits. Esta opción anula la creación de un volcado de 64 bits. Úselo solo para la depuración del subsistema WOW64
-?Usar -? -e para ver líneas de comando de ejemplo.

Si omites el nombre del archivo de volcado, el valor predeterminado es <nombredelproceso>_<fechahora>.dmp

Utiliza la opción de línea de comando -accepteula para aceptar automáticamente el acuerdo de licencia de Sysinternals.

Terminación automatizada:

Establecer un evento con el nombre ProcDump- es lo mismo que escribir Ctrl+C para finalizar correctamente ProcDump

Nombre del archivo:

Nombre de archivo de volcado predeterminado: PROCESSNAME_YYMMDD_HHMMSS.dmp

Se admiten las siguientes sustituciones:

SubstitutionExplicación
PROCESSNAMENombre del proceso
Process IDPID
EXCEPTIONCODECódigo de Excepción
YYMMDDAño/Mes/Día
HHMMSSHora/Minuto/Seegundo
ProcDump

Ejemplos

Escribe un mini volcado de un proceso llamado ‘bloc de notas’ (solo puede existir una coincidencia):

C:\>procdump notepad

Escribe un volcado completo de un proceso con PID ‘4572’:

C:>C:\>procdump -ma 4572

Escribe 3 mini volcados con 5 segundos de diferencia de un proceso llamado ‘bloc de notas’:

C:>C:\>procdump -s 5 -n 3 notepad

Escribe hasta 3 mini volcados de un proceso llamado ‘consumir’ cuando supere el 20% del uso de la CPU durante cinco segundos:

C:>procdump -c 20 -s 5 -n 3 consumir

Escribe un mini volcado para un proceso llamado ‘hang.exe’ cuando uno de sus Ventas no responde durante más de 5 segundos:

C:>procdump -h hang.exe hungwindow.dmp

Escribe un mini volcado de un proceso denominado ‘outlook’ cuando el uso total de la CPU del sistema supere el 20 % durante 10 segundos:

C:>procdump outlook -p "\Processor(_Total)\% Processor Time" 20

Escribe un volcado completo de un proceso denominado ‘outlook’ cuando el recuento de identificadores de Outlook supere los 10 000:

C:\>procdump -ma outlook -p "\Process(Outlook)\Handle Count" 10000

Escribe un volcado de MiniPlus del Almacén de información de Microsoft Exchange cuando tenga una excepción no controlada:

C:\>procdump -mp -e store.exe

Mostrar sin escribir un volcado, los códigos/nombres de excepción de w3wp.exe:

C:\>procdump -e 1 -f "" w3wp.exe

Escribe un mini volcado de w3wp.exe si el código/nombre de una excepción contiene ‘NotFound’:

C:\>procdump -e 1 -f NotFound w3wp.exe

Inicie un proceso y luego supervíselo en busca de excepciones:

C:\>procdump -e 1 -f "" -x c:\dumps consume.exe

Regístrese para iniciar e intente activar una ‘aplicación’ moderna. Se iniciará una nueva instancia de ProcDump cuando se active para monitorear las excepciones:

C:\>procdump -e 1 -f "" -x 
c:\dumpsMicrosoft.BingMaps_8wekyb3d8bbwe!AppexMaps

Regístre para el lanzamiento de un ‘paquete’ moderno. Se iniciará una nueva instancia de ProcDump cuando se active (manualmente) para monitorear las excepciones:

C:\>procdump -e 1 -f "" -x 
c:\dumps Microsoft.BingMaps_1.2.0.136_x64__8wekyb3d8bbwe

Regístre como depurador Just-in-Time (AeDebug). Realiza volcados completos en c:\dumps:

C:\>procdump -ma -i c:\dumps

Ve una lista de líneas de comando de ejemplo (los ejemplos se enumeran arriba):

C:\>procdump -? -e

Informar de errores

Si encuentras algún error o aporte a la información proporcionada por favor dirígela a soporte@ehack.mx

Otras consideraciones

  • Windows Internals Book La página oficial de actualizaciones y erratas del libro definitivo sobre componentes internos de Windows, escrito por Mark Russinovich y David Solomon.
  • Windows Sysinternals Administrator’s Reference La guía oficial de las utilidades de Sysinternals de Mark Russinovich y Aaron Margosis, que incluye descripciones de todas las herramientas, sus características, cómo usarlas para solucionar problemas y ejemplos de casos reales de su uso.

Defrag Tools: #9 – ProcDump  – Este episodio de Herramientas de desfragmentación cubre lo que captura la herramienta y las duraciones esperadas de las interrupciones
Defrag Tools: #10 – ProcDump – Triggers  – Activadores Este episodio cubre las opciones de activación en particular las excepciones de 1ra y 2da oportunidad
Defrag Tools: #11 – ProcDump – Windows 8 & Process Monitor – Windows 8 y Process Monitor Este episodio cubre el soporte de aplicaciones modernas y el soporte de registro de Process Monitor

Obtener el programa:

Referencias


Fuente Imágenes:

ProcDump: Imágenes cortesía by Nala Systems

ProcDump by Roberto C. González traducido y ampliado para Ethical Hack algunas partes se adaptan directamente del sitio SysInternals de Microsoft
©2022, Ethical Hack, Todos los derechos reservados sobre la traducción.
©2022, Ethical Hack, Todos los derechos reservados sobre el contenido propio.

Powered by – Ethical Hack

eHack Blog

Entradas recientes

dnsenum

El comando dnsenum es una herramienta de línea de comandos para realizar enumeración de DNS…

11 meses hace

Las 24 listas negras de IPv4 más comunes.

En esta entrada te presento 24 de las listas negras más comunes que los servidores…

1 año hace

ZoomIt – SysInternals

ZoomIt es una herramienta de anotación y zoom de pantalla para presentaciones técnicas que incluyen…

2 años hace

WinObj – SysInternals

WinObj es el visor de espacios de nombres de Object Manager definitivo. Es la primera…

2 años hace

WhoIs – SysInternals

Whois realiza el registro de registro para el nombre de dominio o la dirección IP…

2 años hace

VolumeID – SysInternals

VolumeID – Esta utilidad, le permite cambiar los identificadores de los discos FAT y NTFS…

2 años hace