Я обнаружил, что самый простой способ сделать это - использовать утилиту createdump
, которая поставляется со средой выполнения dotnet и находится в том же каталоге, что и libcoreclr.so. ( благодаря Маони Стивенс ).
Использование createdump
довольно просто:
createdump [options] pid
-f, --name - dump path and file name. The pid can be placed in the name with %d. The default is "/tmp/coredump.%d"
-n, --normal - create minidump (default).
-h, --withheap - create minidump with heap.
-t, --triage - create triage minidump.
-u, --full - create full core dump.
-d, --diag - enable diagnostic messages.
Подробнее о созданном здесь можно узнать
Другой вариант - использовать dotnet-dump global tool, о котором вы можете прочитать об этом здесь .
В Linux версия времени выполнения должна быть 3.0 или выше. В Windows dotnet-dump collect будет работать с любой версией среды выполнения.
Поскольку я использовал v2.2, я не смог использовать этот инструмент.