|
如何在windows平台同时产生javacore 和 HeapDump?
具体步骤如下:
1、 设置Windows的环境变量,使WAS JVM在产生javacore的同时产生HeapDump文件(缺省只会产生 javacore)。点击windows桌面->鼠标右键-属性-进入系统属性对话框-进入高级页面-点击环境变量-在系统变量中-分别加入以下变量名和变量值
变量名 变量值
IBM_HEAPDUMP true
IBM_HEAP_DUMP true
IBM_HEAPDUMPDIR c:\
2、 注销当前用户,重新登录
3、 可以通过手工或windows 服务的方式启动WAS,如果使用手工方式,如下:
cd c:\WebSphere\AppServer\bin
adminserver
4、 在启动过程中,在adminserver DOS启动对话窗口中应该可以看到DrAdmin available on port xxxx 的字样或者在日志文件c:\WebSphere\AppServer\logs\tracefile中进行查看。
5、 WAS启动正常后,在C:\WebSphere\AppServer\bin目录中通过以下命令让JVM产生JavaCore和HeapDump文件
DrAdmin -serverPort xxxx –dumpThreads
6、 注意观察adminserver DOS启动对话窗口中,应该出现产生Javacore和HeapDump的提示信息,具体可以参看以下目录:
JavaCore:
<win>\System32
C:\WebSphere\AppServer
C:\WebSphere\AppServer\bin
HeapDump:
根据环境变量IBM_HEAPDUMPDIR设置的目录,应该在c:\目录中。
补充:
IBM_HEAPDUMP_OUTOFMEMORY true
IBM_JAVADUMP_OUTOFMEMORY true
WAS在以上两项环境变量的设置下,一旦JVM出现内存申请失败抛出Out of Memory错误时,JVM将会自动产生JavaCore和HeapDump。
在生产环境下,谨慎使用此两项环境变量的设置,以防把文件系统撑爆。 |
|