Výpis paměti je soubor, který obsahuje snímek procesu v době vytvoření výpisu paměti a může být užitečný pro zkoumání stavu vaší aplikace. Výpisy paměti se dají použít k ladění aplikace .NET, když je obtížné k ní připojit ladicí program, například produkční prostředí nebo prostředí CI. Pomocí výpisů paměti můžete zaznamenat stav problematického procesu a prozkoumat ho, aniž byste museli aplikaci zastavit.
Shromažďování výpisů paměti
Výpisy paměti se dají shromažďovat různými způsoby v závislosti na tom, na jaké platformě vaše aplikace běží.
Poznámka
Výpisy paměti mohou obsahovat citlivé informace, protože mohou obsahovat úplnou paměť spuštěného procesu. Zpracujte je s případnými omezeními zabezpečení a pokyny.
Proměnné prostředí můžete použít ke konfiguraci aplikace tak, aby shromažďovala výpis stavu systému.
Možná budete chtít shromáždit výpis paměti, když se aplikace ještě neukončila. Pokud například chcete prozkoumat stav aplikace, která se zdá být ve vzájemném zablokování, nebude konfigurace proměnných prostředí pro shromažďování výpisů stavu při chybovém ukončení užitečná, protože aplikace je stále spuštěná.
dotnet-dump je jednoduchý nástroj příkazového řádku pro různé platformy, který shromažďuje výpis paměti. Některé další nástroje ladicího programu, jako je Visual Studio nebo windbg , mají také funkce shromažďování výpisů paměti.
Pokud používáte aplikaci v produkčním prostředí nebo ji spouštíte distribuovaným způsobem (několik služeb, replik), dotnet-monitor poskytuje podporu pro řadu běžných scénářů a ad hoc diagnostických šetření, včetně shromažďování výpisů paměti a výchozího přenosu dat. Umožňuje shromažďování výpisů paměti vzdáleně nebo s aktivačními podmínkami.
Analýza výpisů paměti
Přejděte do části Ladění výpisů systému Linux, kde najdete informace týkající se analýzy výpisů paměti shromážděných v Linuxu.
Přejděte do části Ladění výpisů systému Windows, kde najdete informace týkající se analýzy výpisů paměti shromážděných ve Windows.
Analýza paměti
Pokud se paměť vaší aplikace stále zvětšuje, můžete ve své aplikaci provést analýzu paměti, ale nejste si jisti, proč tomu tak je. Kurz nevracení paměti ladění ukazuje, jak ladit nevracení paměti pomocí nástrojů rozhraní příkazového řádku dotnet s příkazy dotnet-sos dumpheap a gcroot.
Přečtěte si další informace o tom, jak můžete využít výpisy paměti k diagnostice problémů v aplikaci .NET.
Kurz ladění výpisů systému Linux vás provede laděním výpisu stavu systému, který byl shromážděn v Linuxu.
Kurz vzájemného zablokování ladění vás provede laděním vzájemného zablokování v aplikaci .NET pomocí výpisů paměti.
Spolupracujte s námi na GitHubu
Zdroj tohoto obsahu najdete na GitHubu, kde můžete také vytvářet a kontrolovat problémy a žádosti o přijetí změn. Další informace najdete v našem průvodci pro přispěvatele.
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby:
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.