ProcDump je nástroj příkazového řádku, jehož primárním účelem je monitorování aplikace pro špičky procesoru a generování výpisů stavu systému během špičky, kterou může správce nebo vývojář použít k určení příčiny špičky. Nástroj ProcDump také zahrnuje monitorování zablokovaných oken (pomocí stejné definice okna, které používá Správce úloh), neošetřené monitorování výjimek a může generovat výpisy na základě hodnot čítačů výkonu systému. Může také sloužit jako obecný nástroj pro výpis stavu procesu, který můžete vložit do jiných skriptů.
Zapište soubor s výpisem paměti Mini. (výchozí) - Zahrnuje přímo a nepřímo odkazovanou paměť (zásobníky a odkazy). – Zahrnuje všechna metadata (proces, vlákno, modul, popisovač, adresní prostor atd.).
-miliampér
Zapište soubor s výpisem stavu systému full. – Zahrnuje veškerou paměť (obrázek, mapovaný a soukromý). – Zahrnuje všechna metadata (proces, vlákno, modul, popisovač, adresní prostor atd.).
-Mt
Zapište soubor výpisu stavu stavu pro třídění. – Zahrnuje přímo odkazovanou paměť (zásobníky). – Zahrnuje omezená metadata (proces, vlákno, modul a popisovač). - Odebrání citlivých informací se pokouší, ale není zaručeno.
-Mp
Napište soubor s výpisem paměti MiniPlus. – Zahrnuje veškerou soukromou paměť a všechny obrázky pro čtení a zápis nebo mapovanou paměť. – Zahrnuje všechna metadata (proces, vlákno, modul, popisovač, adresní prostor atd.). – Pro minimalizaci velikosti je vyloučena největší oblast privátní paměti nad 512 MB. Oblast paměti je definována jako součet přidělení paměti stejné velikosti. Výpis paměti je tak podrobný jako úplný výpis paměti, ale velikost je 10%-75 %. – Poznámka: Procesy CLR se vypisují jako úplné (-ma) kvůli omezením ladění.
-Mc
Zapište soubor s výpisem stavu systému Vlastní. - Zahrnuje paměť a metadata definovaná zadanou MINIDUMP_TYPE maskou (Hex).
-Md
Zapište soubor výpisu stavu zpětného volání. - Zahrnuje paměť definovanou rutinou MiniDumpWriteDump zpětného volání s názvem MiniDumpCallbackRoutine zadané knihovny DLL. – Zahrnuje všechna metadata (proces, vlákno, modul, popisovač, adresní prostor atd.).
-Mk
Zapište také soubor výpisu stavu jádra. – Zahrnuje zásobníky jádra vláken v procesu. – Operační systém nepodporuje výpis jádra (-mk) při použití klonu (-r). – Při použití více velikostí výpisu paměti se pro každou velikost výpisu paměti použije výpis paměti jádra.
Podmínky:
Podmínka
Popis
-a
Vyhněte se výpadku. Vyžaduje -r. Pokud trigger způsobí pozastavení cíle po delší dobu kvůli překročení limitu souběžného výpisu paměti, aktivační událost se přeskočí.
-u
Vyhněte se výpadku při vypršení časového limitu. Zrušte kolekci triggeru v N sekundách.
-b
Zacházejte s ladicí zarážky jako výjimkami (jinak je ignorujte).
-c
Prahová hodnota procesoru, nad kterou se má vytvořit výpis stavu procesu.
-Cl
Prahová hodnota procesoru, pod kterou se má vytvořit výpis stavu procesu.
-stejnosměrný proud
Přidejte zadaný řetězec do vygenerovaného komentáře k výpisu stavu systému.
-e
Pokud proces narazí na neošetřenou výjimku, napište výpis paměti. Zahrňte příkaz k vytvoření výpisu 1 paměti u výjimek s první šancí. Přidání -ld pro vytvoření výpisu paměti při načtení knihovny DLL (modulu) (filtrování platí). Přidání -ud pro vytvoření výpisu paměti při uvolnění knihovny DLL (modulu) (filtrování platí). Přidejte -ct k vytvoření výpisu paměti při vytvoření vlákna. Přidání -et k vytvoření výpisu paměti při ukončení vlákna
-f
Filtr (include) pro obsah výjimek, protokolování ladění a název souboru při načítání a uvolnění knihovny DLL. Podporují se zástupné cardy (*).
-trh zahraničních měn
Filtrování (vyloučení) u obsahu výjimek, protokolování ladění a názvu souboru při načítání a uvolnění knihovny DLL. Podporují se zástupné cardy (*).
-g
Spustit jako nativní ladicí program ve spravovaném procesu (bez spolupráce)
-h
Výpis stavu, pokud má proces zablokující okno (nereaguje na zprávy okna po dobu nejméně 5 sekund).
-k
Ukončete proces po klonování (-r) nebo na konci kolekce výpisů.
-l
Zobrazí protokolování ladění procesu.
-m
Prahová hodnota potvrzení paměti v MB, ve které se má vytvořit výpis paměti.
-Ml
Aktivují se, když potvrzení paměti klesne pod zadanou hodnotu MB.
-n
Početvýpisch
-o
Přepište existující soubor s výpisem paměti.
-p
Aktivujte, když je čítač výkonu nebo je vyšší než zadaná prahová hodnota. U některých čítačů a/nebo názvů instancí se rozlišují malá a velká písmena.
-Pl
Aktivujte, když čítač výkonu klesne pod zadanou prahovou hodnotu.
-r
Výpis stavu pomocí klonu Souběžný limit je volitelný (výchozí 1, max. 5). Operační systém nepodporuje výpis jádra (-mk) při použití klonu (-r). UPOZORNĚNÍ: Vysoká hodnota souběžnosti může mít vliv na výkon systému. - Windows 7: Používá reflexi. Operační systém nepodporuje -e. - Windows 8.0: Používá reflexi. Operační systém nepodporuje -e. - Windows 8.1+: Používá pss. Podporují se všechny typy aktivačních událostí.
-s
Po sobě jdoucí sekundy před zápisem výpisu (výchozí hodnota je 10).
-t
Při ukončení procesu napište výpis paměti.
-u
Zacházení s využitím procesoru vzhledem k jednomu jádru (používá se -cs).
-v
POUZE LADĚNÍ: Podrobný výstup.
-w
Počkejte, až se zadaný proces spustí, pokud není spuštěný.
-Wer
Zařadíte do fronty výpis (největší) do Zasílání zpráv o chybách systému Windows.
-x
Spusťte zadaný obrázek s volitelnými argumenty. Pokud se jedná o aplikaci nebo balíček store, spustí se procDump při další aktivaci (pouze).
-y
SKRYTÉ: Aktivace aplikace store.
-64
Ve výchozím nastavení Nástroj ProcDump zaznamená 32bitový výpis 32bitového procesu při spuštění v 64bitovém systému Windows. Tato možnost přepíše vytvoření 64bitového výpisu paměti. Používá se pouze pro ladění subsystému WOW64.
Licenční smlouva:
Použijte možnost příkazového -accepteula řádku k automatickému přijetí licenční smlouvy Sysinternals.
Automatizované ukončení:
-cancel <Target Process PID>
Pomocí této možnosti nebo nastavením události s názvem ProcDump-<PID> je stejná jako při psaní Ctrl+C pro řádné ukončení nástroje ProcDump. Řádné ukončení zajišťuje obnovení procesu, pokud je zachytávání aktivní. Zrušení platí pro všechny instance ProcDump, které proces monitorují.
Jméno souboru:
Výchozí název souboru výpisu paměti: PROCESSNAME_YYMMDD_HHMMSS.dmp
Podporují se následující náhrady:
Substituce
Vysvětlení
PROCESSNAME
Název procesu
PID
Process ID
EXCEPTIONCODE
Kód výjimky
YYMMDDD
Rok/měsíc/den
HHMMSS
Hodina/minuta/sekunda
Příklady
Napište mini výpis stavu procesu s názvem Poznámkový blok (může existovat pouze jedna shoda):
Windows Command Prompt
C:\>procdumpnotepad
Napište úplný výpis stavu procesu s PID 4572:
Windows Command Prompt
C:\>procdump -ma 4572
Nejprve napište mini a pak úplný výpis procesu s PID 4572:
Windows Command Prompt
C:\>procdump -mm -ma 4572
Zapište 3 mini výpisy paměti 5 sekund od procesu s názvem "poznámkový blok":
Windows Command Prompt
C:\>procdump -n 3 -s 5 notepad
Při překročení 20% využití procesoru po dobu pěti sekund zapište až 3 minimální výpisy stavu procesu s názvem "spotřebovat":
Windows Command Prompt
C:\>procdump -n 3 -s 5 -c 20 consume
Pokud jeden z jeho oken nereaguje déle než 5 sekund, napište pro proces s názvem "hang.exe":
Windows Command Prompt
C:\>procdump -hhang.exe
Pokud jeden z jeho oken nereaguje déle než 5 sekund, zapište úplný výpis stavu jádra pro proces s názvem "hang.exe":
Windows Command Prompt
C:\>procdump -ma -mk -hhang.exe
Pokud celkové využití procesoru systému překročí 20 % po dobu 10 sekund, napište mini výpis procesu s názvem "outlook":
Poznámka: Více čítačů instancí
Pokud existuje více instancí čítače, budete muset zahrnout název nebo číslo instance.
txt
\Processor(NNN)\% Processor Time
\Thermal Zone Information(<name>)\Temperature
\Process(<name>[#NNN])\<counter>
Starší operační systém vyžaduje připojení PID pro \Process čítače.
txt
\Process(<name>[_PID])\<counter>
Tip: Pomocí Sledování výkonu zobrazte čítače (esp. case sensitivity). Tip: Pro \Process(*) čítače založené pomocí PowerShellu namapovat PID na jeho #NNN.
pwsh
Get-Counter -Counter "\Process(*)\ID Process"
Napište úplný výpis paměti pro 2. náhodnou výjimku:
Windows Command Prompt
C:\>procdump -ma -ew3wp.exe
Napište úplný výpis paměti pro 1. nebo 2. náhodnou výjimku:
Windows Command Prompt
C:\>procdump -ma -e 1 w3wp.exe
Napište úplný výpis stavu zprávy ladicího řetězce:
Windows Command Prompt
C:\>procdump -ma -lw3wp.exe
Zapište až 10 úplných výpisů paměti každé 1. nebo 2. náhodné výjimky w3wp.exe:
Windows Command Prompt
C:\>procdump -ma -n 10 -e 1 w3wp.exe
Pokud kód/název/msg výjimky obsahujeNotFound '', zapište až 10 úplných výpisů paměti:
Windows Command Prompt
C:\>procdump -ma -n 10 -e 1 -fNotFoundw3wp.exe
Pokud zpráva řetězce ladění obsahujeNotFound "", zapište až 10 úplných výpisů stavu:
Windows Command Prompt
C:\>procdump -ma -n 10 -l -fNotFoundw3wp.exe
Počkejte na proces s názvem Poznámkový blok (a sledujte výjimky):
Windows Command Prompt
C:\>procdump -e -wnotepad
Spusťte proces s názvem Poznámkový blok (a monitorujte ho pro výjimky):
Windows Command Prompt
C:\>procdump -e -xc:\dumpsnotepad
Zaregistrujte se ke spuštění a pokuste se aktivovat obchod s aplikací. Po aktivaci se spustí nová instance ProcDump:
Pokud má neošetřenou výjimku, napište výpis paměti MiniPlus úložiště informací microsoft Exchange:
Windows Command Prompt
C:\>procdump -mp -estore.exe
Zobrazí se bez zápisu výpisu paměti, kódy a názvy výjimek w3wp.exe:
Windows Command Prompt
C:\>procdump -e 1 -f "" w3wp.exe
Windows 7/8.0; Pomocí reflexe můžete snížit výpadek pro 5 po sobě jdoucích triggerů:
Windows Command Prompt
C:\>procdump -r -ma -n 5 -s 15 wmplayer.exe
Windows 8.1+; Pomocí PSS můžete snížit výpadek pro 5 souběžných triggerů:
Windows Command Prompt
C:\>procdump -r 5 -ma -n 5 -s 15 wmplayer.exe
Nainstalujte nástroj ProcDump jako ladicí program postmortem (AeDebug):
Windows Command Prompt
C:\>procdump -ma -ic:\dumps
.. nebo..
Windows Command Prompt
C:\Dumps>procdump -ma -i
Odinstalujte Nástroj ProcDump jako ladicí program postmortem (AeDebug):
Windows Command Prompt
C:\>procdump -u
Prohlédněte si seznam ukázkových příkazových řádků (výše uvedené příklady):
Windows Command Prompt
C:\>procdump -? -e
Související odkazy
Windows Internals Book Oficiální aktualizace a errata stránka konečné knihy o Windows internals, Mark Russinovich a David Solomon.
Správce systému Windows Sysinternals Reference Oficiální průvodce sysinternals nástroje Sysinternals Mark Russinovich a Aaron Margosis, včetně popisů všech nástrojů, jejich funkcí, jak je používat k řešení potíží, a příklady případů skutečného světa jejich použití.
Využijte službu Web App Down, Crash Monitoring a Ask Genie k řešení potíží. Pomocí těchto nástrojů můžete monitorovat dostupnost aplikací a platforem, identifikovat neošetřené výjimky, zachytit výpisy paměti a kontejner volání a najít oblasti vyšetřování a diagnostiky.
V této 3dílné epizodě Defrag Tools, Andrew Richards a Larry Larsen vás provedou Sysinternals ProcDump. Nástroj ProcDump umožňuje zachytit paměť procesu spuštěného v počítači. Soubor s výpisem paměti může mít různou velikost a může být pořízen s různou dobou výpadku. Výpisy paměti se dají aktivovat okamžitě nebo je můžou aktivovat nejrůznějšími událostmi, včetně využití procesoru, využití paměti, čítače výkonu, zablokovaného okna nebo nativních nebo spravovaných výjimek. Část 1 popisuje, co nástroj zachycuje