Дампы
Дамп — это файл, содержащий моментальный снимок процесса во время создания дампа, который может оказаться полезным для изучения состояния приложения. Дампы можно использовать для отладки приложения .NET, если к нему трудно подключить отладчик, например рабочие или среды CI. Использование дампов позволяет записать состояние проблемного процесса и изучить его без необходимости приостанавливать работу приложения.
Сбор дампов
Дампы можно собирать различными способами в зависимости от того, на какой платформе работает ваше приложение.
Примечание.
Дампы могут содержать конфиденциальные сведения, поскольку они могут содержать всю память выполняющегося процесса. При их обработке следует учитывать ограничения безопасности и рекомендации.
Совет
Часто задаваемые вопросы о сборе дампов, анализе и других предостережениях см. в разделе "Дампы: вопросы и ответы".
Переменные среды можно использовать для настройки приложения для сбора дампа при сбое.
Вы можете собрать дамп, когда приложение еще не завершило работу. Например, если вы хотите проверить состояние приложения, в котором, на ваш взгляд, возникла взаимоблокировка, настройка переменных среды для сбора дампов при сбое не будет полезна, так как приложение все еще работает.
dotnet-dump — это простое кроссплатформенное средство командной строки для сбора дампа. Некоторые другие средства отладчика, такие как Visual Studio или windbg , также имеют функции сбора дампов.
Если вы работаете приложение в рабочей среде или выполняете его в распределенном режиме (несколько служб, реплика), dotnet-monitor обеспечивает поддержку многих распространенных сценариев и нерегламентированных диагностических исследований, включая сбор дампов и исходящий трафик. Он позволяет собирать дампы удаленно или с условиями активации.
Анализ дампов
Перейдите в раздел Отладка дампов Linux для получения сведений об анализе дампов, собранных в Linux.
Перейдите в раздел Отладка дампов Windows для получения сведений об анализе дампов, собранных в Windows.
Анализ памяти
Вы можете выполнять анализ памяти в приложении, если память вашего приложения продолжает расти, но вы не уверены, почему это так. Руководство по утечке памяти отладки показывает, как отлаживать утечку памяти с помощью средств cli dotnet-sos с помощью команд dotnet-sos дампа и gcroot.
Анализ памяти Visual Studio можно использовать для диагностики утечки памяти в Windows.
См. также
Узнайте больше о том, как использовать дампы для диагностики проблем в приложении .NET.
В руководстве по отладке дампов Linux представлены пошаговые инструкции по отладке дампа, собранного в Linux.
В руководстве по отладке взаимоблокировок описывается отладка взаимоблокировок в приложении .NET с помощью дампов.