信息收集: Java VM Exit=NN
Technote (FAQ)
疑问
[Simplified Chinese]当发生错误信息”Java VM Exit = NN“时,您应该收集哪些信息?
原因
通常Java ™虚拟机(JVM)崩溃时, 系统会报出“Java JVM exit=NN”错误信息。
答案
通常JVM崩溃时会生成以下三种类型的日志文件:
Javacore,
Snap trace,
Core dumps。
这三种日志文件可能不会同时产生。
Javacore是文本文件,其中包含JVM崩溃时的状态信息。
Javacore通常命名为:
Javacore....txt
例如: javacore.20080304.1002.1224.txt。
表明该文件在2008年3月4日上午10:02产生,对应的进程标识(PID)是1224。
Snap trace包含“flight recorder”数据--关于JVM在崩溃之前正在运行的信息。
该文件命名为:
SnapNNN....trc
例如: Snap001.20080705.1112.1234.trc。
表明该文件在2008年7月5日上午10:02产生,对应的进程标识(PID)是1234。
Core dumps包含崩溃时的进程内存空间的完整信息。
JVM使用它自己的崩溃日志处理过程并产生core dumps文件:
core....dmp
Core dump需要jextract(或j9jextract)工具进行处理以收集所需的信息。
对于Java版本1.2.x,1.3.x,1.4.x:如果使用的是J9 VM请使用“j9jextract”,否则使用jextract。
对于Java版本 1.5和更高版本,“J9”JVM是标准引擎;请使用所提供的jextract程序。
下面简要介绍使用j9jextract的方法。
首先在JVM中的安装目录中找到j9jextract.exe文件。
Rational Application Developer v6 = = >日志文件在\eclipse\jre;
j9jextract在 \eclipse\jre\bin\j9jextract.exe
Rational Application Developer v7 = = >日志文件在\jdk\jre\bin ;
j9jextract在\jdk\jre\bin\j9jextract.exe
对于WTE (或WebSphere Application Server) Java VM崩溃:
日志文件在文件\java\bin;
j9jextract在\java\jre\bin\j9jextract.exe
然后运行
j9extract core....dmp
这将生成一个文件:
core....dmp.xml
该文件包含了原始核心文件,系统库和其他从崩溃环境收集到的信息。J9jextract程序可以将JRE目录中找到。
所以,当您遇到Java VM Exit类型的错误时, 应找到:
- javacore文件
- samp races文件
- core dumps 文件(并使用j9jextract处理)
然后进行压缩,并将它们发送到IBM技术支持部门。
这些文件通常过大而不能用电子邮件发送。
您必须使用 Exchanging information with IBM Technical Support中的方法通过FTP上传到IBM技术支持部门。
相关信息
An US English translation is available
注:一般来说遇到jvm崩溃,如oom、线程池满、连接吃满等情况,我都需要javacore、heapdump文件,这对于我们分析宕机和其他问题时非常有效的手段,这几种文件我一般使用IBM Thead、IBM HEAPDUMP分析工具来分析,用这几个工具打开日志这些转储日志文件,分析起来非常直观明了。在IBM官网可以下载到最新的版本。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14710393/viewspace-754352/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14710393/viewspace-754352/