Zrzuty

Zrzut to plik, który zawiera migawkę procesu w momencie utworzenia zrzutu i może być przydatny do zbadania stanu aplikacji. Zrzuty mogą służyć do debugowania aplikacji .NET, gdy trudno jest dołączyć do niej debuger, taki jak środowiska produkcyjne lub ciągłej integracji. Użycie zrzutów umożliwia przechwycenie stanu problematycznego procesu i sprawdzenie go bez konieczności zatrzymywania aplikacji.

Zbieranie zrzutów

Zrzuty można zbierać na różne sposoby w zależności od platformy, na której działa aplikacja.

Uwaga

Zrzuty mogą zawierać poufne informacje, ponieważ mogą zawierać pełną pamięć uruchomionego procesu. Obsłuż je za pomocą wszelkich ograniczeń zabezpieczeń i wskazówek, które należy wziąć pod uwagę.

Napiwek

Aby uzyskać często zadawane pytania dotyczące zbierania zrzutów, analizy i innych zastrzeżeń, zobacz Zrzuty: często zadawane pytania.

  • Zmienne środowiskowe umożliwiają skonfigurowanie aplikacji pod kątem zbierania zrzutu w przypadku awarii.

  • Możesz zebrać zrzut, gdy aplikacja jeszcze nie uległa awarii. Jeśli na przykład chcesz sprawdzić stan aplikacji, która wydaje się znajdować w impasie, skonfigurowanie zmiennych środowiskowych w celu zbierania zrzutów w przypadku awarii nie będzie pomocne, ponieważ aplikacja nadal działa.

  • dotnet-dump to proste międzyplatformowe narzędzie wiersza polecenia do zbierania zrzutu. Kilka innych narzędzi debugera, takich jak Visual Studio lub windbg , ma również funkcje zbierania zrzutów.

  • Jeśli używasz aplikacji w środowisku produkcyjnym lub uruchamiasz ją w sposób rozproszony (kilka usług, replik), dotnet-monitor zapewnia obsługę wielu typowych scenariuszy i badań diagnostycznych ad hoc, w tym zbierania zrzutów i ruchu wychodzącego. Umożliwia zbieranie zrzutów zdalnie lub z warunkami wyzwalania.

Analizowanie zrzutów

  • Przejdź do pozycji Debugowanie zrzutów systemu Linux, aby uzyskać informacje dotyczące analizowania zrzutów zebranych w systemie Linux.

  • Przejdź do pozycji Debugowanie zrzutów systemu Windows, aby uzyskać informacje dotyczące analizowania zrzutów zebranych w systemie Windows.

Analiza pamięci

Możesz przeprowadzić analizę pamięci w aplikacji, jeśli pamięć aplikacji będzie nadal rosła, ale nie masz pewności, dlaczego tak się dzieje. Samouczek dotyczący wycieku pamięci debugowania pokazuje, jak debugować przeciek pamięci przy użyciu narzędzi interfejsu wiersza polecenia dotnet-sos za pomocą poleceń dumpheap i gcroot.

Analiza pamięci programu Visual Studio może służyć do diagnozowania przecieku pamięci w systemie Windows.

Zobacz też

Dowiedz się więcej o tym, jak można wykorzystać zrzuty, aby ułatwić diagnozowanie problemów w aplikacji platformy .NET.