ProcDump är ett kommandoradsverktyg vars primära syfte är att övervaka ett program för CPU-toppar och generera kraschdumpar under en topp som en administratör eller utvecklare kan använda för att fastställa orsaken till toppen. ProcDump innehåller även övervakning av låsta fönster (med samma definition av en fönsterlåsning som Windows och Aktivitetshanteraren använder), ohanterad undantagsövervakning och kan generera dumpar baserat på värdena för systemprestandaräknare. Det kan också fungera som ett allmänt processdumpverktyg som du kan bädda in i andra skript.
Skriv en "Mini"-dumpfil. (standard) – Innehåller direkt och indirekt refererat minne (staplar och vad de refererar till). – Innehåller alla metadata (process, tråd, modul, handtag, adressutrymme osv.).
-mor
Skriv en fullständig dumpfil. – Innehåller allt minne (bild, mappad och privat). – Innehåller alla metadata (process, tråd, modul, handtag, adressutrymme osv.).
-Mt
Skriv en "Triage"-dumpfil. – Innehåller direkt refererat minne (staplar). – Innehåller begränsade metadata (process, tråd, modul och handtag). - Borttagning av känslig information görs men garanteras inte.
-parlamentsledamot
Skriv en "MiniPlus"-dumpfil. – Innehåller allt privat minne och all läs-/skrivbild eller mappat minne. – Innehåller alla metadata (process, tråd, modul, handtag, adressutrymme osv.). – För att minimera storleken undantas det största privata minnesområdet över 512 MB. Ett minnesområde definieras som summan av minnesallokeringar i samma storlek. Dumpen är så detaljerad som en fullständig dump men 10%-75% storleken. - Obs! CLR-processer dumpas som fullständiga (-ma) på grund av felsökningsbegränsningar.
-Mc
Skriv en "anpassad" dumpfil. – Innehåller minne och metadata som definierats av den angivna MINIDUMP_TYPE masken (Hex).
-Md
Skriv en dumpfil för återanrop. – Innehåller det minne som definieras av MiniDumpWriteDump återanropsrutinen med namnet MiniDumpCallbackRoutine på den angivna DLL:en. – Innehåller alla metadata (process, tråd, modul, handtag, adressutrymme osv.).
-Mk
Skriv även en "Kernel"-dumpfil. – Innehåller kernelstackarna i trådarna i processen. – Operativsystemet stöder inte en kerneldump (-mk) när du använder en klon (-r). – När du använder flera dumpstorlekar tas en kerneldump för varje dumpstorlek.
Villkor:
Villkor
beskrivning
-a
Undvik avbrott. Kräver -r. Om utlösaren gör att målet pausas under en längre tid på grund av en överskriden gräns för samtidiga dumpar hoppas utlösaren över.
-vid
Undvik avbrott vid timeout. Avbryt utlösarens samling i N sekunder.
-b
Behandla felsöknings brytpunkter som undantag (annars ignorera dem).
-c
Cpu-tröskelvärde över vilket du vill skapa en dump av processen.
-cl
Cpu-tröskelvärde under vilket du kan skapa en dump av processen.
-domänkontrollant
Lägg till den angivna strängen i den genererade dumpkommenten.
-e
Skriv en dump när processen stöter på ett ohanterat undantag. Inkludera att skapa dump på 1 undantag för första chansen. Lägg -ld till för att skapa en dump när en DLL (modul) läses in (filtrering gäller). Lägg -ud till för att skapa en dump när en DLL (modul) tas bort (filtrering gäller). Lägg till -ct för att skapa en dump när en tråd skapas. Lägg till -et för att skapa en dump när en tråd avslutas.
-f
Filtrera (inkludera) på innehållet i undantag, felsökningsloggning och filnamn vid DLL-inläsning/avlastning. Jokertecken (*) stöds.
-Fx
Filtrera (exkludera) på innehållet i undantag, felsökningsloggning och filnamn vid DLL-inläsning/avlastning. Jokertecken (*) stöds.
-g
Kör som ett internt felsökningsprogram i en hanterad process (inget heltal).
-h
Skriv dump om processen har ett låst fönster (svarar inte på fönstermeddelanden på minst 5 sekunder).
-k
Avsluta processen efter kloning (-r) eller i slutet av dumpsamlingen.
-L
Visa felsökningsloggningen för processen.
-m
Tröskelvärde för minnesincheckning i MB för att skapa en dump.
-Ml
Utlösare när minnesincheckning sjunker under angivet MB-värde.
-n
Antal dumpar som ska skrivas innan du avslutar.
-o
Skriv över en befintlig dumpfil.
-p
Utlös när prestandaräknaren ligger på eller överskrider det angivna tröskelvärdet. Vissa räknare och/eller instansnamn kan vara skiftlägeskänsliga.
-Pl
Utlösare när prestandaräknaren faller under det angivna tröskelvärdet.
-r
Dumpa med en klon. Samtidig gräns är valfri (standard 1, max 5). Operativsystemet stöder inte en kerneldump (-mk) när du använder en klon (-r). VARNING! Ett högt samtidighetsvärde kan påverka systemets prestanda. – Windows 7: Använder reflektion. Operativsystemet stöder -einte . – Windows 8.0: Använder reflektion. Operativsystemet stöder -einte . – Windows 8.1+: Använder PSS. Alla utlösartyper stöds.
-s
Sekunder i följd innan dumpen skrivs (standardvärdet är 10).
-t
Skriv en dump när processen avslutas.
-u
Behandla CPU-användning i förhållande till en enda kärna (används med -c).
-v
ENDAST FELSÖKNING: Utförliga utdata.
-w
Vänta tills den angivna processen startas om den inte körs.
-wer
Köa (största) dumpen till Windows Felrapportering.
-x
Starta den angivna avbildningen med valfria argument. Om det är ett Store-program eller -paket startar ProcDump vid nästa aktivering (endast).
-y
DOLD: Lagra programaktivering.
-64
Som standard samlar ProcDump in en 32-bitars dump av en 32-bitarsprocess när den körs i 64-bitars Windows. Det här alternativet åsidosätter för att skapa en 64-bitars dump. Använd endast för wow64-undersystemsfelsökning.
Licensavtal:
Använd kommandoradsalternativet -accepteula för att automatiskt acceptera Sysinternals-licensavtalet.
Automatisk avslutning:
-cancel <Target Process PID>
Att använda det här alternativet eller ange en händelse med namnet ProcDump-<PID> är detsamma som att skriva Ctrl+C för att korrekt avsluta ProcDump. En korrekt avslutning säkerställer att processen återupptas om en avbildning är aktiv. Annulleringen gäller för ALLA ProcDump-instanser som övervakar processen.
Filnamn:
Standardfilnamn för dump: PROCESSNAME_YYMMDD_HHMMSS.dmp
Följande ersättningar stöds:
Ersättning
Förklaring
PROCESSNAME
Processnamn
PID
Process ID
UNDANTAGSKOD
Undantagskod
YYMMDD
År/månad/dag
HHMMSS
Timme/minut/sekund
Exempel
Skriv en minidump av en process med namnet "anteckningar" (endast en matchning kan finnas):
Windows Command Prompt
C:\>procdumpnotepad
Skriv en fullständig dump av en process med PID "4572":
Windows Command Prompt
C:\>procdump -ma 4572
Skriv en Mini först och sedan en fullständig dump av en process med PID "4572":
Windows Command Prompt
C:\>procdump -mm -ma 4572
Skriv 3 Mini dumpar 5 sekunder från en process med namnet "anteckningar":
Windows Command Prompt
C:\>procdump -n 3 -s 5 notepad
Skriv upp till 3 minidumpar av en process med namnet "förbruka" när den överskrider 20 % CPU-användning i fem sekunder:
Windows Command Prompt
C:\>procdump -n 3 -s 5 -c 20 consume
Skriv en minidump för en process med namnet "hang.exe" när ett av fönstren inte svarar i mer än 5 sekunder:
Windows Command Prompt
C:\>procdump -hhang.exe
Skriv en fullständig och kernel-dump för en process med namnet "hang.exe" när ett av dess fönster inte svarar i mer än 5 sekunder:
Windows Command Prompt
C:\>procdump -ma -mk -hhang.exe
Skriv en minidumpning av en process med namnet "outlook" när den totala system-CPU-användningen överskrider 20 % i 10 sekunder:
Obs! Flera instansräknare
Om det finns flera instanser av räknaren måste du inkludera namn och/eller instansnummer.
txt
\Processor(NNN)\% Processor Time
\Thermal Zone Information(<name>)\Temperature
\Process(<name>[#NNN])\<counter>
Äldre operativsystem kräver att du lägger till PID för \Process räknare.
txt
\Process(<name>[_PID])\<counter>
Tips: Använd Prestandaövervakaren för att visa räknarna (esp. skiftlägeskänslighet). Tips: För \Process(*) baserade räknare använder du PowerShell för att mappa en PID till dess #NNN.
pwsh
Get-Counter -Counter "\Process(*)\ID Process"
Skriv en fullständig dump för ett undantag för andra chansen:
Windows Command Prompt
C:\>procdump -ma -ew3wp.exe
Skriv en fullständig dump för ett undantag för första eller andra chansen:
Windows Command Prompt
C:\>procdump -ma -e 1 w3wp.exe
Skriv en fullständig dump för ett felsökningssträngmeddelande:
Windows Command Prompt
C:\>procdump -ma -lw3wp.exe
Skriv upp till 10 fullständiga dumpar av varje 1:a eller 2:a chans undantag för w3wp.exe:
Windows Command Prompt
C:\>procdump -ma -n 10 -e 1 w3wp.exe
Skriv upp till 10 fullständiga dumpar om ett undantags kod/namn/msg innehåller :NotFound
Windows Command Prompt
C:\>procdump -ma -n 10 -e 1 -fNotFoundw3wp.exe
Skriv upp till 10 fullständiga dumpar om ett felsökningssträngmeddelande innehåller :NotFound:
Windows Command Prompt
C:\>procdump -ma -n 10 -l -fNotFoundw3wp.exe
Vänta på en process med namnet "anteckningar" (och övervaka den för undantag):
Windows Command Prompt
C:\>procdump -e -wnotepad
Starta en process med namnet "anteckningar" (och övervaka den för undantag):
Windows Command Prompt
C:\>procdump -e -xc:\dumpsnotepad
Registrera dig för start och försök att aktivera ett "program". En ny ProcDump-instans startar när den aktiveras:
Skriv en MiniPlus-dump av Microsoft Exchange Information Store när den har ett ohanterat undantag:
Windows Command Prompt
C:\>procdump -mp -estore.exe
Visa utan att skriva en dump, undantagskoderna/namnen på w3wp.exe:
Windows Command Prompt
C:\>procdump -e 1 -f "" w3wp.exe
Windows 7/8.0; Använd Reflektion för att minska avbrott för 5 på varandra följande utlösare:
Windows Command Prompt
C:\>procdump -r -ma -n 5 -s 15 wmplayer.exe
Windows 8.1+; Använd PSS för att minska avbrott för 5 samtidiga utlösare:
Windows Command Prompt
C:\>procdump -r 5 -ma -n 5 -s 15 wmplayer.exe
Installera ProcDump som (AeDebug) postmortem-felsökningsprogrammet:
Windows Command Prompt
C:\>procdump -ma -ic:\dumps
.. eller..
Windows Command Prompt
C:\Dumps>procdump -ma -i
Avinstallera ProcDump som (AeDebug) postmortem-felsökningsprogrammet:
Windows Command Prompt
C:\>procdump -u
Se en lista över exempelkommandorader (exemplen visas ovan):
Windows Command Prompt
C:\>procdump -? -e
Relaterade länkar
Windows Internals Book De officiella uppdateringarna och erratasidan för den definitiva boken om Windows internals, av Mark Russinovich och David Solomon.
Windows Sysinternals Administrator's Reference Den officiella guiden till Sysinternals-verktygen av Mark Russinovich och Aaron Margosis, inklusive beskrivningar av alla verktyg, deras funktioner, hur du använder dem för felsökning och exempel på verkliga fall av deras användning.
Använd Web App Down, Crash Monitoring och Ask Genie för felsökning. Använd dessa verktyg för att övervaka program- och plattformstillgänglighet, identifiera ohanterade undantag, samla in minnesdumpar och anropstack och hitta områden för undersökning och diagnostik.
I det här tredelade avsnittet av Defrag Tools går Andrew Richards och Larry Larsen igenom Sysinternals ProcDump. Med ProcDump kan du samla in minnet av en process som körs på datorn. Dumpfilen kan vara av varierande storlek och kan tas med varierande avbrottstid. Dumpar kan utlösas omedelbart eller utlösas av en mängd olika händelser, inklusive CPU-användning, minnesanvändning, en prestandaräknare, ett låst fönster och/eller interna/hanterade undantag. Del 1 beskriver vad verktyget fångar in och de avbrotts
I det här tredelade avsnittet av Defrag Tools går Andrew Richards och Larry Larsen igenom Sysinternals ProcDump. Med ProcDump kan du samla in minnet av en process som körs på datorn. Dumpfilen kan vara av varierande storlek och kan tas med varierande avbrottstid. Dumpar kan utlösas omedelbart eller utlösas av en mängd olika händelser, inklusive CPU-användning, minnesanvändning, en prestandaräknare, ett låst fönster och/eller interna/hanterade undantag. Del 1 (den här veckan) beskriver vad verktyget samlar i
I det här tredelade avsnittet av Defrag Tools går Andrew Richards och Larry Larsen igenom Sysinternals ProcDump. Med ProcDump kan du samla in minnet av en process som körs på datorn. Dumpfilen kan vara av varierande storlek och kan tas med varierande avbrottstid. Dumpar kan utlösas omedelbart eller utlösas av en mängd olika händelser, inklusive CPU-användning, minnesanvändning, en prestandaräknare, ett låst fönster och/eller interna/hanterade undantag. Del 1 beskriver vad verktyget fångar in och de avbrotts