我已经通过以下步骤在Websphere应用服务器8.5.5上启用了自动堆转储生成。 Appserver>>process definition>>environment条目 添加以下两个条目。 IBM_HEAPDUMP =真 IBM_HEAPDUMP_OUTOFMEMORY =真 我只想知道堆转储的生成频率是多少?15个请求中的一个例子。10请求时,我们已经面对了outofMemoryerror: Java堆空间。堆转储会产生1次还是10次?
发布于 2018-07-09 15:15:40
没有使用环境变量的这类特性。
IBM_HEAPDUMP只用于将false设置为完全禁用堆转储。将其设置为true是多余的,因为这是默认的。
IBM_HEAPDUMP_OUTOFMEMORY也是如此。默认情况下,在OutOfMemoryError上启用堆转储。
您可以在这里找到有关这些环境变量的更多信息:j9.html
请注意,不再推荐用于控制转储的envars支持-Xdump:agents.html。
尽管如此,在没有某些触发器的情况下,不存在自动生成堆转储的功能。您可以在这里找到关于如何请求堆转储的各种方法:Dump
最简单的方法可能是编写脚本。您还没有指定您使用的是哪个操作系统,但我想这是基于POSIX的IBM Java操作系统,所以我将使用带有shell脚本的Java操作:
#!/bin/sh
while true; do
java -jar surgery.jar -command HeapDump -pid $1
sleep $2
donehttps://stackoverflow.com/questions/51186640
复制相似问题