ProcDump es una utilidad de línea de comandos cuyo propósito principal es supervisar una aplicación para 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 la supervisión de ventanas bloqueadas (con la misma definición de un bloqueo de ventana que usa Windows y el Administrador de tareas), la 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 proceso general que puede insertar en otros scripts.
Escribir un archivo de volcado "Mini". (predeterminado). - Incluye memoria a la que se hace referencia directa e indirectamente (pilas y a lo que hacen referencia). - Incluye todos los metadatos (proceso, subproceso, módulo, identificador, espacio de direcciones, etc.).
-ma
Escribir un archivo de volcado "Completo". - Incluye toda la memoria (imagen, asignada y privada). - Incluye todos los metadatos (proceso, subproceso, módulo, identificador, espacio de direcciones, etc.).
-mt
Escribir un archivo de volcado de "evaluación de prioridades". - Incluye memoria a la que se hace referencia directamente (pilas). - Incluye metadatos limitados (Proceso, Subproceso, Módulo y Controlador). - Se intenta eliminar la información confidencial, pero no se garantiza.
-mp
Escribir un archivo de volcado "MiniPlus". - Incluye toda la memoria privada y toda la imagen de lectura y escritura o la memoria asignada. - Incluye todos los metadatos (proceso, subproceso, módulo, identificador, espacio de direcciones, etc.). - Para minimizar el tamaño, se excluye el área de memoria privada más grande de 512 MB. Un área de memoria se define como la suma de las asignaciones de memoria de mismo tamaño. El volcado de memoria es tan detallado como un volcado completo, pero el tamaño es del 10% - 75 %. - Nota: Los procesos CLR se vuelcan como Completos (-ma) debido a las limitaciones de depuración.
-mc
Escribir un archivo de volcado "Personalizado". - Incluye la memoria y los metadatos definidos por la máscara especificada MINIDUMP_TYPE (hexadecimal).
md
Escribir un archivo de volcado de "devolución de llamada". - Incluye la memoria definida por la rutina de devolución de llamada de MiniDumpWriteDump denominada MiniDumpCallbackRoutine del archivo DLL especificado. - Incluye todos los metadatos (proceso, subproceso, módulo, identificador, espacio de direcciones, etc.).
-mk
Escribir también un archivo de volcado de memoria "Kernel". - Incluye las pilas de kernel de los subprocesos en el proceso. - El sistema operativo no admite un volcado de kernel (-mk) al usar un clon (-r). - Cuando se usan varios tamaños de volcado, se toma un volcado de kernel para cada tamaño de volcado.
Condiciones:
Condición
Descripción
-a
Evitar la interrupción. Se requiere -r. Si el desencadenador hará que el destino se suspenda durante un tiempo prolongado debido a un límite de volcado simultáneo superado, se omitirá el desencadenador.
-at
Evitar la interrupción en el tiempo de espera. Cancelar la colección del desencadenador a los N segundos.
-b
Tratar los puntos de interrupción de depuración como excepciones (de lo contrario, omitirlos).
-c
Umbral de CPU por encima del cual se crea un volcado de memoria del proceso.
-cl
Umbral de CPU por debajo del cual se crea un volcado de memoria del proceso.
-dc
Agregar la cadena especificada al comentario de volcado generado.
-e
Escribir un volcado cuando el proceso encuentre una excepción no controlada. Incluya el 1 para crear un volcado en las excepciones de primera oportunidad. Agregue -ld para crear un volcado cuando se cargue un DLL (módulo) (se aplica el filtrado). Agregue -ud para crear un volcado cuando se descargue un DLL (módulo) (se aplica el filtrado). Agregue -ct para crear un volcado de memoria cuando se cree un subproceso. Agregue -et para crear un volcado de memoria cuando se cierre un subproceso.
-f
Filtrar (incluir) el contenido de las excepciones, el registro de depuración y el nombre de archivo en la carga o descarga de DLL. Se admiten caracteres comodín (*).
-fx
Filtrar (excluir) el contenido de las excepciones, el registro de depuración y el nombre de archivo en la carga/descarga de DLL. Se admiten caracteres comodín (*).
-g
Ejecutar como 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).
-k
Finalizar el proceso tras la clonación (-r), o al final de la recogida de volcados.
-l
Mostrar el registro de depuración del proceso.
-m
Umbral de confirmación de memoria en MB en el que se va a crear un volcado de memoria.
-ml
Desencadenar cuando la memoria comprometida cae por debajo del valor de MB especificado.
-n
Número de volcados de memoria que se van a escribir antes de salir.
-o
Sobrescribir un archivo de volcado existente.
-p
Desencadenar cuando el contador de rendimiento está en, o supera, el umbral especificado. Algunos contadores o nombres de instancia pueden distinguir mayúsculas de minúsculas.
-pl
Desencadenar cuando el contador de rendimiento cae por debajo del umbral especificado.
-r
Volcado de memoria mediante un clon. El límite simultáneo es opcional (el valor predeterminado es 1, máximo 5). El sistema operativo no admite un volcado de kernel (-mk) al usar un clon (-r). PRECAUCIÓN: un valor de simultaneidad alto puede afectar al rendimiento del sistema. - Windows 7: usa reflexión. El sistema operativo no admite -e. - Windows 8.0: usa reflexión. El sistema operativo no admite -e. - Windows 8.1+: usa PSS. Se admiten todos los tipos de desencadenadores.
-s
Segundos consecutivos antes de escribir el volcado (el valor predeterminado es 10).
-t
Escribir un volcado de memoria cuando finalice el proceso.
-u
Tratar el uso de CPU con respecto a un único núcleo (se usa con -c).
-v
SOLO DEPURACIÓN: salida detallada.
-w
Esperar a que se inicie el proceso especificado si no se está ejecutando.
-wer
Poner en cola el volcado (mayor) en Informe de errores de Windows.
-x
Iniciar la imagen especificada con argumentos opcionales. Si se trata de una aplicación o paquete de la tienda, ProcDump se iniciará en la siguiente activación (solo).
-y
OCULTO: activación de la aplicación de la tienda.
-64
De forma predeterminada, ProcDump capturará un volcado de 32 bits de un proceso de 32 bits cuando se ejecute en Windows de 64 bits. Esta opción invalida para crear un volcado de 64 bits. Usar solo para la depuración del subsistema WOW64.
Contrato de licencia:
Use la opción -accepteula de la línea de comandos para aceptar automáticamente el contrato de licencia de Sysinternals.
Terminación automatizada:
-cancel <Target Process PID>
El uso de esta opción o el establecimiento de un evento con el nombre ProcDump-<PID> es lo mismo que teclear Ctrl+C para terminar ProcDump correctamente. La finalización correcta garantiza que el proceso se reanude si una captura está activa. La cancelación se aplica a todas las instancias de ProcDump que supervisan el proceso.
Filename:
Nombre de archivo de volcado predeterminado: PROCESSNAME_YYMMDD_HHMMSS.dmp
Se admiten las siguientes sustituciones:
Sustitución
Explicación
PROCESSNAME
Nombre del proceso
PID
Identificador del proceso
EXCEPTIONCODE
Código de excepción
YYMMDD
Año/Mes/Día
HHMMSS
Hora/Minuto/Segundo
Ejemplos
Escribir un minivolcado de memoria de un proceso denominado "Bloc de notas" (solo puede existir una coincidencia):
Símbolo del sistema de Windows
C:\>procdumpnotepad
Escribir un volcado completo de un proceso con PID "4572":
Símbolo del sistema de Windows
C:\>procdump -ma 4572
Escribir primero un minivolcado y, a continuación, un volcado completo de un proceso con PID "4572":
Símbolo del sistema de Windows
C:\>procdump -mm -ma 4572
Escribir 3 minivolcados de memoria 5 segundos aparte de un proceso denominado "Bloc de notas":
Símbolo del sistema de Windows
C:\>procdump -n 3 -s 5 notepad
Escribir hasta 3 minivolcados de memoria de un proceso denominado "consumir" cuando supere el 20 % de uso de CPU durante cinco segundos:
Símbolo del sistema de Windows
C:\>procdump -n 3 -s 5 -c 20 consume
Escribir un minivolcado para un proceso denominado "hang.exe" cuando una de sus ventanas no responde durante más de 5 segundos:
Símbolo del sistema de Windows
C:\>procdump -hhang.exe
Escribir un volcado completo y de kernel para un proceso denominado "hang.exe" cuando una de sus ventanas no responde durante más de 5 segundos:
Símbolo del sistema de Windows
C:\>procdump -ma -mk -hhang.exe
Escribir un minivolcado de memoria de un proceso denominado "outlook" cuando el uso total de CPU del sistema supere el 20 % durante 10 segundos:
Nota: Contadores de instancias múltiples
Si hay varias instancias del contador, deberá incluir el nombre o el número de instancia.
txt
\Processor(NNN)\% Processor Time
\Thermal Zone Information(<name>)\Temperature
\Process(<name>[#NNN])\<counter>
Los sistemas operativos más antiguos requieren que añada el PID para contadores de \Process.
txt
\Process(<name>[_PID])\<counter>
Consejo: Use el Monitor de rendimiento para ver los contadores (sobre todo si se distingue entre mayúsculas y minúsculas). Consejo: Para contadores basados en \Process(*), use PowerShell para asignar un PID a su #NNN.
pwsh
Get-Counter -Counter "\Process(*)\ID Process"
Escribir un volcado completo para una excepción de segunda oportunidad:
Símbolo del sistema de Windows
C:\>procdump -ma -ew3wp.exe
Escribir un volcado completo para una excepción de primera o segunda oportunidad:
Símbolo del sistema de Windows
C:\>procdump -ma -e 1 w3wp.exe
Escribir un volcado completo para un mensaje de cadena de depuración:
Símbolo del sistema de Windows
C:\>procdump -ma -lw3wp.exe
Escribir hasta 10 volcados completos de cada primera o segunda excepción de probabilidad de w3wp.exe:
Símbolo del sistema de Windows
C:\>procdump -ma -n 10 -e 1 w3wp.exe
Escribir hasta 10 volcados completos si el código/nombre/mensaje de una excepción contiene ''NotFound":
Símbolo del sistema de Windows
C:\>procdump -ma -n 10 -e 1 -fNotFoundw3wp.exe
Escribir hasta 10 volcados completos si un mensaje de cadena de depuración contiene "NotFound":
Símbolo del sistema de Windows
C:\>procdump -ma -n 10 -l -fNotFoundw3wp.exe
Esperar a un proceso denominado "Bloc de notas" (y supervisión de excepciones):
Símbolo del sistema de Windows
C:\>procdump -e -wnotepad
Iniciar un proceso denominado "Bloc de notas" (y supervisión de excepciones):
Símbolo del sistema de Windows
C:\>procdump -e -xc:\dumpsnotepad
Registrarse para iniciar, e intentar activar, una "aplicación" de la tienda. Se iniciará una nueva instancia de ProcDump cuando se active:
Escribir un volcado de memoria MiniPlus del Almacén de información de Microsoft Exchange cuando tenga una excepción no controlada:
Símbolo del sistema de Windows
C:\>procdump -mp -estore.exe
Mostrar sin escribir un volcado de memoria, los códigos de excepción o los nombres de w3wp.exe:
Símbolo del sistema de Windows
C:\>procdump -e 1 -f "" w3wp.exe
Windows 7/8.0; usar Reflexión para reducir la interrupción de 5 desencadenadores consecutivos:
Símbolo del sistema de Windows
C:\>procdump -r -ma -n 5 -s 15 wmplayer.exe
Windows 8.1+; usar PSS para reducir la interrupción de 5 desencadenadores simultáneos:
Símbolo del sistema de Windows
C:\>procdump -r 5 -ma -n 5 -s 15 wmplayer.exe
Instalar ProcDump como depurador postmortem (AeDebug):
Símbolo del sistema de Windows
C:\>procdump -ma -ic:\dumps
..o..
Símbolo del sistema de Windows
C:\Dumps>procdump -ma -i
Desinstalar ProcDump como depurador postmortem (AeDebug):
Símbolo del sistema de Windows
C:\>procdump -u
Vea una lista de líneas de comandos de ejemplo (los ejemplos se enumeran anteriormente):
Símbolo del sistema de Windows
C:\>procdump -? -e
Vínculos relacionados
Libro de elementos internos de Windows Las actualizaciones oficiales y la página de erratas del libro definitivo sobre los elementos internos de Windows, de Mark Russinovich y David Solomon.
Referencia del administrador de Windows Sysinternals La guía oficial de las utilidades de Sysinternals de Mark Russinovich y Aaron Margosis, incluidas descripciones de todas las herramientas, sus características, cómo usarlas para solucionar problemas y ejemplos de casos reales de su uso.
Utilice Web App Down, Crash Monitoring y Ask Genie para solucionar problemas. Use estas herramientas para supervisar la disponibilidad de aplicaciones y plataformas, identificar excepciones no controladas, capturar volcados de memoria y llamadas y buscar áreas de investigación y diagnóstico.