请帮助解决这个问题,我想运行一个 shell 脚本,它应该使用 kill -3 命令每 30 秒进行一次 jave 堆转储。提前致谢。
最佳答案
你试过这么简单的shell脚本吗?
while true
do
jmap -dump:file=/tmp/java-`date +%s`.hprof PID_OF_JVM
sleep 30
done
这将为每个快照创建一个文件 pear。对于线程转储,您可以使用类似的脚本:
while true
do
jstack PID_OF_JVM > stack-`date +%s`.txt
sleep 30
done
我猜你可以使用 kill -3
而不是 jstack
。
关于java - 如何使用 kill -3 <pid> 命令每 30 秒进行一次 java 堆转储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11669419/