3. root
5580
1
0
Oct27 ?
00
:
02
:
27
/usr/bin/java -server -XX:PermSize=64M
-XX:MaxPermSize=128m -
Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -
Djava.util.logging.config.file=/usr/local/tomcat8090/conf/logging.proper
ties -Djava.endorsed.dirs=/usr/local/tomcat8090/endorsed -classpath :/
usr/local/tomcat8090/bin/bootstrap.jar -
Dcatalina.base=/usr/local/tomcat8090 -
Dcatalina.home=/usr/local/tomcat8090 -
Djava.io.tmpdir=/usr/local/tomcat8090/temp org.apache.catalina.startu
p.Bootstrap start
4. # kill -
3
5580
首先,找出 Java 进程 id
‘
,然后再执行 kill -3
’
进程号 的操作,等文件生成后再做一次同样的操作,再
产生一组文件。
如何分析
JavaCore 文件
两组文件在分析 JavaCore 时特别有效,因为它可以看出在先后两个时间点上,线程执行的位置,如果
发现先后两组数据中同一线程都执行在同一位置,则说明此处可能有问题,因为程序运行是极快的,如
果两次均在某一点上,说明这一点耗时是很大的,通过对这两个文件进行分析,查出原因,进而解决问
题。
JavaCore
“
文件的头部有一个 Current Thread Details”标记,它记录了 JavaCore 产生时系统运行的
线程 id,使用线程 id 在文件中查找线程的详细信息,该信息中记载了线程运行哪个类的时候造成的
JavaCore。
1. NULL ------------------------------------------------------------------------
2. 0SECTION TITLE subcomponent dump routine
3.
NULL
===============================
4. 1TISIGINFOOUTOFMEMORY received
5. 1TIDATETIME Date: 2011/12/07 at 15:59:42
6. 1TIFILENAME Javacore filename:/usr/WebSphere/AppServer/profiles/WC
SProdNode2/javacore19202086.1323298782.txt
7. NULL ------------------------------------------------------------------------
8. 0SECTION XHPI subcomponent dump routine
9.
NULL
==============================
10. 1XHTIME Wed Dec 7 15:59:42 2011
11. 1XHSIGRECV Unexpected signal -1 received at 0x0 in
<unknown>
. P
rocessing terminated.
12. 1XHFULLVERSION J2RE 1.4.2 IBM AIX build ca142ifx-20090918 (SR13
FP2)
13. NULL