堆转储不工作 Centos 7

Heap Dump not working Centos 7

我在 catalina.sh 文件中添加了以下设置 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="/root/logs"。

但是当 tomcat 关闭时堆转储文件仍然没有创建。我在 AWS 上的 centos 7 上有这个设置。

请帮我解决这个问题...在此先感谢。

如果它没有通过使用名为 jmap 的 JDK 捆绑工具自动生成,我建议尝试手动创建它,尽管我们建议您使用上面的自动方法以获得最佳结果。

对于Linux/Solaris-based操作系统: 请在 Linux OS 上执行以下命令:

$JAVA_HOME/bin/jmap -dump:format=b,file=heap.bin <pid>

更多参考按照下面的link:

https://confluence.atlassian.com/doc/generating-a-heap-dump-219024032.html

tomcat 进程通常设置为 运行 作为 tomcat 用户,该用户很可能对您的 /root 文件夹没有任何写入权限。

请尝试将其设置为 /tmp