如何生成javacore和heapdump

转载 2012年12月04日 14:26:00


-----成功生成:
如何生成javacore和heapdump
进入wsadmin
  D:\IBM\WebSphere\AppServer\bin>wsadmin -user wasadmin -password password
生成javacore
设置jvm环境变量:
  wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]
生成javacore文件:
  wsadmin>$AdminControl invoke $jvm dumpThreads
生成heapdump
找到JVM对象名字:
  wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=server1,*]
生成heapdump文件:
  wsadmin>$AdminControl invoke $objectName generateHeapDump

 

 

生成javacore和heapdump例子:
D:\IBM\AppServer\profiles\AppSrv01\bin>wsadmin.bat
  WASX7209I: 使用 SOAP 连接器连接到节点 javavagNode01 上的进程“server1”;进程的
 类型为:UnManagedProcess
 WASX7029I: 要获取帮助,请输入:“$Help help”
wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]
   WebSphere:name=JVM,process=server1,platform=proxy,node=javavagNode01,j2eeType=JV
   M,J2EEServer=server1,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,
   cell=javavagN   ode01Cell,spec=1.0

wsadmin>$AdminControl invoke $jvm dumpThreads
   生成的javacore位置为:
   D:\IBM\AppServer\profiles\AppSrv01\javacore.20090410.153958.3564.txt


wsadmin>$AdminControl invoke $objectName generateHeapDump

 

生成javacore和heapdump例子:
D:\IBM\AppServer\profiles\AppSrv01\bin>wsadmin.bat
  WASX7209I: 使用 SOAP 连接器连接到节点 javavagNode01 上的进程“server1”;进程的
 类型为:UnManagedProcess
 WASX7029I: 要获取帮助,请输入:“$Help help”
wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]
   WebSphere:name=JVM,process=server1,platform=proxy,node=javavagNode01,j2eeType=JV
   M,J2EEServer=server1,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,
   cell=javavagN   ode01Cell,spec=1.0

wsadmin>$AdminControl invoke $jvm dumpThreads
   生成的javacore位置为:
   D:\IBM\AppServer\profiles\AppSrv01\javacore.20090410.153958.3564.txt

wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=server1,*]
    WebSphere:name=JVM,process=server1,platform=proxy,node=javavagNode01,j2eeType=JVM,
    J2EEServer=server1,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=javavagNode01Cell,spec=1.0
wsadmin>$AdminControl invoke $objectName generateHeapDump
wsadmin>
生成的Heapdump文件位置为:
D:\IBM\AppServer\profiles\AppSrv01\heapdump.20090410.154059.3564.phd


set jvm [$AdminControl completeObjectName type=JVM,process=ncMem01,*]
$AdminControl invoke $jvm dumpThreads
set objectName [$AdminControl queryNames WebSphere:type=JVM,process=ncMem01,*]
$AdminControl invoke $objectName generateHeapDump


set jvm [$AdminControl completeObjectName type=JVM,process=master,*]
$AdminControl invoke $jvm dumpThreads
set objectName [$AdminControl queryNames WebSphere:type=JVM,process=master,*]
$AdminControl invoke $objectName generateHeapDump

 

set jvm [$AdminControl completeObjectName type=JVM,process=ncMem02,*]
$AdminControl invoke $jvm dumpThreads
set objectName [$AdminControl queryNames WebSphere:type=JVM,process=ncMem02,*]
$AdminControl invoke $objectName generateHeapDump


set jvm [$AdminControl completeObjectName type=JVM,process=ncMem03,*]
$AdminControl invoke $jvm dumpThreads
set objectName [$AdminControl queryNames WebSphere:type=JVM,process=ncMem03,*]
$AdminControl invoke $objectName generateHeapDump


was内存监控
查看内存使用情况方法:
sysMonitor.bat 设置端口号,然后进行查看内存使用状态。

如何生成javacore和heapdump
进入wsadmin
  D:\IBM\WebSphere\AppServer\bin>wsadmin -user was -password ytoadmin@2011
生成javacore
设置jvm环境变量:
  wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]
生成javacore文件:
  wsadmin>$AdminControl invoke $jvm dumpThreads
生成heapdump
找到JVM对象名字:
  wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=ncMem01,*]
生成heapdump文件:
  wsadmin>$AdminControl invoke $objectName generateHeapDump

 

 

 

 


如果启用了安全,则需要输入用户名和密码:

 


[root@hrapp bin]# pwd
/opt/IBM/WebSphere/AppServer/bin
[root@hrapp bin]# ./set jvm [$AdminControl completeObjectName type=JVM,process=ncMem01,*]
-bash: ./set: 没有那个文件或目录
[root@hrapp bin]# ./wsadmin.sh
WASX7246E: 因为认证失败无法建立到主机“localhost”的“SOAP”连接。确保命令行上或属性文件中的用户和密码是正确的。
异常消息(如有):“ADMN0022E: 由于凭证不足或凭证为空,无法对 Server MBean 的 getProcessType 操作进行访问。”
WASX7213I: 此脚本编制客户机未连接到服务器进程;请参阅日志文件 /opt/IBM/WebSphere/AppServer/profiles/Dmgr01/logs/wsadmin.traceout 以获取更多信息。
WASX8011W: AdminTask 对象不可用。
[root@hrapp bin]# ./wsadmin.sh   -user   admin    -password     ytoadmin@2011
WASX7209I: 使用 SOAP 连接器连接到节点 hrappCellManager01 上的进程“dmgr”;进程的类型为:DeploymentManager
WASX7029I: 要获取帮助,请输入:“$Help help”
wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=ncMem01,*]
WebSphere:name=JVM,process=ncMem01,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=ncMem01,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $jvm dumpThreads

wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=ncMem01,*]
WebSphere:name=JVM,process=ncMem01,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=ncMem01,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $objectName generateHeapDump
/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/./heapdump.20110408.015156.31480.phd
wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=master,*]
WebSphere:name=JVM,process=master,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=master,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $jvm dumpThreads

wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=master,*]
WebSphere:name=JVM,process=master,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=master,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $objectName generateHeapDump
/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/./heapdump.20110408.015504.31213.phd
wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=ncMem02,*]
WebSphere:name=JVM,process=ncMem02,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=ncMem02,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $jvm dumpThreads

wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=ncMem02,*]
WebSphere:name=JVM,process=ncMem02,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=ncMem02,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $objectName generateHeapDump
/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/./heapdump.20110408.015625.31779.phd
wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=ncMem03,*]
WebSphere:name=JVM,process=ncMem03,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=ncMem03,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $jvm dumpThreads

wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=ncMem03,*]
WebSphere:name=JVM,process=ncMem03,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=ncMem03,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $objectName generateHeapDump
/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/./heapdump.20110408.015728.32051.phd
wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=ncMem03,*]
WebSphere:name=JVM,process=ncMem03,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=ncMem03,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $jvm dumpThreads

wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=ncMem03,*]
WebSphere:name=JVM,process=ncMem03,platform=proxy,node=hrappNode01,j2eeType=JVM,J2EEServer=ncMem03,version=6.1.0.11,type=JVM,mbeanIdentifier=JVM,cell=hrappCell01,spec=1.0
wsadmin>$AdminControl invoke $objectName generateHeapDump
/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/./heapdump.20110408.020032.32051.phd
wsadmin>invoke $objectName generateHeapDump
WASX7015E: 运行命令时发生异常:“invoke $objectName generateHeapDump”;异常信息:
com.ibm.bsf.BSFException: error while eval'ing Jacl expression:
invalid command name "invoke"
    while executing
"invoke $objectName generateHeapDump"
wsadmin>$AdminControl invoke $objectName generateHeapDump
/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/./heapdump.20110408.020148.32051.phd
wsadmin>

相关文章推荐

JVM性能调优之生成堆的dump文件

最近因项目存在内存泄漏,故进行大规模的JVM性能调优 , 现把经验做一记录。 一、JVM内存模型及垃圾收集算法  1.根据Java虚拟机规范,JVM将内存划分为: New(年轻代)T...

如何查看javacore和heapdump文件

一。查看javacore文件      1.下载ThreadDumpAnalyser,graphviz,svgviewer      2.运行runall.bat javacore.txt...
  • guomei
  • guomei
  • 2015年06月28日 23:36
  • 982

JAVACORE与HEAPDUMP生成大法

JavaCore文件主要保存的是Java应用各线程在某一时刻的运行的位置,即JVM执行到哪一个类、哪一个方法、哪一个行上。 它是一个文本文件,打开后可以看到每一个线程的执行栈,以stack tr...
  • zfr629
  • zfr629
  • 2016年11月01日 10:52
  • 1440

如何产生javacore和heapdump文件

1.  windows & Linux:          修改运行脚本的javaw 到java,并且添加参数-XX:+HeapDumpOnCtrlBreak。 运行程序后,按ctrl+brea...
  • guomei
  • guomei
  • 2015年06月28日 23:28
  • 2745

jvm 生成javacore和heapdump文件

jvm 生成javacore和heapdump文件   (1)如果使用Oracle JVM也就是标准的SUN JVM(SUN已被oracle收购) 当内存溢出时生成heapdump文件配置如...

java程序性能分析用到的文件thread dump和heap dump入门

在故障定位(尤其是out of memory)和性能分析的时候,经常会用到一些文件来帮助我们排除代码问题。这些文件记录了JVM运行期间的内存占用、线程执行等情况,这就是我们常说的dump文件。常用的有...

JavaCore/HeapDump文件及其分析方法

产生时间 Java程序运行时,有时会产生JavaCore及HeapDump文件,它一般发生于Java程序遇到致命问题的情况下。 有时致命问题发生后,Java应用不会死掉,还能继续运...

设置core dump 文件生成目录

源地址:http://blog.csdn.net/vvqboy/article/details/43649567 步骤一:开启core dump文件生成 ulimit -c unlimited...

jvm 生成javacore和heapdump文件

(1)如果使用Oracle JVM也就是标准的SUN JVM(SUN已被oracle收购) 当内存溢出时生成heapdump文件配置如下 -Xloggc:${目录}/temp_gc.log    ...
  • wanglha
  • wanglha
  • 2015年06月25日 09:47
  • 1903

java dump文件怎么生成和分析-JMAP用法

java dump文件怎么生成-JMAP用法
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何生成javacore和heapdump
举报原因:
原因补充:

(最多只允许输入30个字)