首页 >Java >java教程 >使用 -XX: HeapDumpOnOutOfMemoryError 参数时,堆转储保存在哪里?

使用 -XX: HeapDumpOnOutOfMemoryError 参数时,堆转储保存在哪里?

Susan Sarandon
Susan Sarandon原创
2024-11-12 14:10:02312浏览

Where does the heap dump get saved when using the -XX: HeapDumpOnOutOfMemoryError parameter?

HeapDumpOnOutOfMemoryError 参数的堆转储位置

当 -XX: HeapDumpOnOutOfMemoryError 参数添加到 JBoss 启动选项中时,会触发创建发生内存不足错误时进行堆转储。要了解此数据转储的位置:

默认位置:

默认情况下,堆转储在工作中名为 java_.hprof 的文件中生成。 JVM 的目录。例如,如果 JBoss 在进程 ID 为 12345 的服务器 servername 上运行,则堆转储将位于 /server/path/to/jboss/java_12345.hprof。

自定义位置:

您可以使用 -XX:HeapDumpPath= 选项指定堆转储的替代位置。通过将此选项设置为目录,例如-XX:HeapDumpPath=/disk2/dumps,可以确保堆转储保存在指定目录中。

控制台输出:

堆转储不会直接打印到控制台。相反,它会写入指定的文件。

未登录时访问转储:

如果您没有通过控制台登录服务器,您可以通过使用 SSH 或其他远程连接工具连接到服务器并导航到它所在的目录来访问转储文件。然后可以下载 java_.hprof 文件或将其复制到方便的位置进行分析。

以上是使用 -XX: HeapDumpOnOutOfMemoryError 参数时,堆转储保存在哪里?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn