appServer WAS / WebSphere / javacore.txt 、heapdump.phd、core.dmp、Snap.trc
s
WAS生成的文件:javacore.***.txt 、heapdump.***.phd、core.***.dmp、Snap.***.trc
WAS生成的常见文件有哪些?
原文链接:http://blog.csdn.net/pqh20085101092/article/details/39370389
javacore.***.txt : 关于cpu的,javacore文件是java进程的快照,主要保存的是Java应用各线程在某一时刻的运行的位置,即JVM执行到哪一个类、哪一个方法、哪一行上。也即threaddump文件。
1.下载ThreadDumpAnalyser,graphviz,svgviewer
ThreadDumpAnalyser:
https://www.ibm.com/developerworks/mydeveloperworks/groups/service/html/communityview?communityUuid=2245aa39-fa5c-4475-b891-14c205f7333c
2.运行runall.bat javacore.txt,会产生三个文件dumps.xml,locktree1.svg,sidebyside.html
二。查看heapdump文件
1.从IBM网站下载ha433包,释放,执行ha433.jar文件
IBM HeapAnalyzer:
https://www.ibm.com/developerworks/mydeveloperworks/groups/service/html/communityview?communityUuid=4544bafe-c7a2-455f-9d43-eb866ea60091
2.在ha433窗口打开heapdump.phd,从中会显示分析结果
进入wsadmin
D:\IBM\WebSphere\AppServer\bin>wsadmin -user wasadmin -password password
1、生成javacore文件
设置jvm环境变量:
wsadmin>set jvm [$AdminControl completeObjectName type=JVM,process=server1,*]
生成javacore文件:
wsadmin>$AdminControl invoke $jvm dumpThreads
找到JVM对象名字:
wsadmin>set objectName [$AdminControl queryNames WebSphere:type=JVM,process=server1,*]
生成heapdump文件:
wsadmin>$AdminControl invoke $objectName generateHeapDump
如何查看WAS生成的Snap.***.trc文件
WAS发生heapdump时随之还产生了javacore和Snap.***.trc文件
Snap.***.trc文件无法直接查看,需要对其进行格式化,就算用文本编辑器打开看见的也是有很多乱码
跟踪格式化器(trace formatter) 是一个可以在任何平台上运行的 Java 程序,可以对来自任何平台的跟踪文件进行格式化。
IBM SDK 在 core.jar 中提供了这个格式化器,它还需要一个称为 TraceFormat.dat 的文件,其中包含格式化模板。这个文件在 jre/lib 中。
可以用以下命令行启动跟踪格式化器:
- <span style="font-size:14px;">java com.ibm.jvm.format.TraceFormat input_file [output_file]</span>
在这里,com.ibm.jvm.format.TraceFormat 是跟踪格式化器类,input_file 是要进行格式化的二进制跟踪文件的名称,output_file 是可选的输出文件名。如果没有指定输出文件,那么默认的输出文件名是输入文件名加上 .fmt。
IBM的dw网站有详细的说明:http://www.ibm.com/developerworks/cn/java/j-ibmjava5/index.html
具体实例命令如下:
- C:\Users\Administrator>cd D:\WebSphere\AppServer\java\bin
- C:\Users\Administrator>d:
- D:\WebSphere\AppServer\java\bin>java com.ibm.jvm.format.TraceFormat D:\WebSphere\AppServer\profiles\AppSrv04\Snap.20150709.143231.10516.0001.trc
- *** Starting data extraction from binary trace file(s)
- *** Locating formatting template files
- *** Found D:\WebSphere\AppServer\java\jre\lib\J9TraceFormat.dat
- *** Found D:\WebSphere\AppServer\java\jre\lib\TraceFormat.dat
- *** Loading further formatting templates from D:\WebSphere\AppServer\java\jre\lib\TraceFormat.dat
- *** Extracting 89 buffers from D:\WebSphere\AppServer\profiles\AppSrv04\Snap.20150709.143231.10516.0001.trc
- *** Sorting buffers
- *** Starting formatting of entries into text file D:\WebSphere\AppServer\profiles\AppSrv04\Snap.20150709.143231.10516.0001.trc.fmt
- *** Number of traced threads = 89
- 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%
- *** Number of formatted tracepoints = 17114
- *** Formatting complete
- *** Formatted output written to file: D:\WebSphere\AppServer\profiles\AppSrv04\Snap.20150709.143231.10516.0001.trc.fmt
- 0 errors were detected during formatting
- D:\WebSphere\AppServer\java\bin>
Snap.***.trc文件格式化之后就可以使用文本编辑器查看了
参考资料:http://bbs.landingbj.com/t-0-177321-1.html
linux was trc文件生成fmt方法,root用户调用命令
[root@Loadrunner19 ~]# /opt/IBM/WebSphere/AppServer/java/bin/java com.ibm.jvm.format.TraceFormat /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/Snap.20160822.154449.11135.0003.trc /opt/test.fmt
end