Ash*_*deh 3 .net-core coreclr asp.net-core
我正在尝试使用 生成正在运行的 .net core 进程的合理大小的gcore核心转储,但该文件大于 20GB。该过程是dotnet wapi.dll使用创建的空项目的二进制文件dotnet new webapi。我认为转储的大小与虚拟内存量有关。
主要问题是如何生成更小的核心转储?
这与我的想法(虚拟内存)有关吗?
我应该限制虚拟内存吗?如何?
我发现最简单的方法是使用createdumpdotnet 运行时附带的实用程序,该实用程序与 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.
Run Code Online (Sandbox Code Playgroud)
另一种选择是使用 dotnet-dump 全局工具,您可以在此处阅读该工具。
在 Linux 上,运行时版本必须为 3.0 或更高版本。在 Windows 上,dotnet-dump Collect 将适用于任何版本的运行时。
因为我运行的是 v2.2,所以我无法使用这个工具。
| 归档时间: |
|
| 查看次数: |
2646 次 |
| 最近记录: |