ITPUB论坛-专业的IT技术社区

标题: 如何在Windows 平台获得WASv5.x/6.x的 Java HeapDump和JavaCore 诊断文件? [打印本页]

作者: swcracker    时间: 2007-3-6 10:49
标题: 如何在Windows 平台获得WASv5.x/6.x的 Java HeapDump和JavaCore 诊断文件?
如何在Windows 平台获得WASv5.x/6.x的 Java HeapDump和JavaCore 诊断文件

具体步骤如下:
1、 设置Windows的环境变量,使WAS JVM在产生javacore的同时产生HeapDump文件(缺省只会产生 javacore)。点击windows桌面->鼠标右键-属性-进入系统属性对话框-进入高级页面-点击环境变量-在系统变量中-分别加入以下变量名和变量值
变量名 变量值
IBM_HEAPDUMP true
IBM_HEAP_DUMP true
IBM_HEAPDUMPDIR c:\

2、 注销当前用户,重新登录

3、 可以通过手工或windows 服务的方式启动WAS,如果使用手工方式,如下:
===For WAS5.x====
cd c:\WebSphere\AppServer\bin
startServer.bat server1
===For WAS6.x====
cd c:\WebSphere\AppServer\profiles\default\bin
startServer.bat server1

4、 WAS启动正常后,在C:\WebSphere\AppServer\bin或C:\WebSphere\AppServer\profiles\default\bin目录中通过以下命令让JVM产生JavaCore和HeapDump文件
键入wsadmin.bat命令,进入wsadmin管理命令行,键入如下代码:
set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]

$AdminControl invoke $jvm dumpThreads

javacore.TIMESTAMP.NUMBER.txt  文件会自动在C:\WebSphere\AppServer或C:\WebSphere\AppServer\default\或您指定的目录中产生。

补充:
IBM_HEAPDUMP_OUTOFMEMORY true
IBM_JAVADUMP_OUTOFMEMORY true
WAS在以上两项环境变量的设置下,一旦JVM出现内存申请失败抛出Out of Memory错误时,JVM将会自动产生JavaCore和HeapDump。

在生产环境下,谨慎使用此两项环境变量的设置,以防把文件系统撑爆。




欢迎光临 ITPUB论坛-专业的IT技术社区 (http://www.itpub.net/) Powered by Discuz! X3.2