Sdílet prostřednictvím


Výpisy stavu systému

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.

Tip

Nejčastější dotazy týkající se shromažďování, analýzy a dalších upozornění najdete v tématu Výpisy paměti: Nejčastější dotazy.

  • 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.

K diagnostice nevracení paměti ve Windows je možné použít analýzu paměti sady Visual Studio.

Viz také

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.