如何生成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>

Websphere产生大量javacore与heapdump文件的分析

项目中碰到的情况,居然产生了20多G,把硬盘占满、服务Down掉。原因可能:出现过多内存泄漏,或者分配过多大内存等。解决方法:   1、进入was管理控制台,选择 应用程序服务器 > se...
  • alangmei
  • alangmei
  • 2014年08月12日 13:47
  • 2792

javacore文件及heapdump文件分析

java程序运行时,有时会产生javacore及heapdump文件,为什么会产生这些文件呢?产生后应该如何分析呢?本文将回答上面的问题。 java程序在遇到致命问题时,就会产生这两个文件,有时...
  • guomei
  • guomei
  • 2015年06月28日 23:38
  • 1195

JavaCore/HeapDump文件分析工具

IBM HeapAnalyzer 更多信息见官方网站地址:http://www.alphaworks.ibm.com/tech/heapanalyzer  在我们的应用程序发生内存泄露的时候,会生...
  • kobejayandy
  • kobejayandy
  • 2013年06月19日 22:47
  • 12041

内存溢出WAS生成的文件javacore.***.txt 、heapdump.***.phd、core.***.dmp、Snap.***.trc说明

WAS生成的常见文件有哪些? 原文链接:http://blog.csdn.net/pqh20085101092/article/details/39370389 javacore.***....
  • NK_TF
  • NK_TF
  • 2017年01月15日 10:38
  • 632

WAS生成的文件:javacore.***.txt 、heapdump.***.phd、core.***.dmp、Snap.***.trc

javacore.***.txt : 关于cpu的,javacore文件是java进程的快照,主要保存的是Java应用各线程在某一时刻的运行的位置,即JVM执行到哪一个类、哪一个方法、哪一行上。也即t...
  • mycdsnstudy
  • mycdsnstudy
  • 2015年08月13日 09:50
  • 1173

JavaCore/HeapDump文件及其分析方法

产生时间   Java程序运行时,有时会产生JavaCore及HeapDump文件,它一般发生于Java程序遇到致命问题的情况下。   有时致命问题发生后,Java应用不会死掉,还能继续运...
  • inaoen
  • inaoen
  • 2015年06月26日 10:01
  • 472

JavaCore/HeapDump文件分析工具

IBM HeapAnalyzer 更多信息见官方网站地址:http://www.alphaworks.ibm.com/tech/heapanalyzer  在我们的应用程序发生内存泄露的时候,会生...
  • kobejayandy
  • kobejayandy
  • 2013年06月19日 22:47
  • 12041

Heapdump javacore文件分析工具

这个一定要记下来,以备不时之需:IBM HeapAnalyzer更多信息见官方网站地址:http://www.alphaworks.ibm.com/tech/heapanalyzer 在我们的应用程序...
  • newhappy2008
  • newhappy2008
  • 2011年06月15日 14:49
  • 3213

JavaCore/HeapDump文件分析工具

IBM HeapAnalyzer 更多信息见官方网站地址:http://www.alphaworks.ibm.com/tech/heapanalyzer  在我们的应用程序发生内存泄露的时候,会生成h...
  • chen_fly2011
  • chen_fly2011
  • 2017年02月07日 17:36
  • 93

javacore文件及heapdump文件分析

  • 2013年04月27日 09:10
  • 428KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何生成javacore和heapdump
举报原因:
原因补充:

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