一种非常重要的方法是生成和分析日志。
1、生成GC日志
添加JVM参数
-verbose:gc
或者
-Xloggc:filename
或使用wsadmin:
a)、写一个jython文件verboseGC_on.jython
server1=AdminConfig.getid('/Node:tux1Node01/Server:server1/')
print server1
jvm = AdminConfig.list('JavaVirtualMachine', server1)
print ">>>>> variable jvm is"
print jvm
print ">>>>> AdminConfig.show(jvm)"
print AdminConfig.show(jvm)
print ">>>>> change jvm settings"
AdminConfig.modify(jvm, [['verboseModeGarbageCollection','true' ]] )
AdminConfig.save()
print ">>>>> after save:"
print AdminConfig.show(jvm)
b)、执行wsadmin.sh -lang jython -f verboseGC_on.jython
2、分析日志
打开GC的详细信息并使用-Dibm.dg.trc.print=st_verify参数
IBM Trace and Request Analyzer for WebSphere Application Server 分析WAS的trace文件和HTTP plug-in的跟踪
http://www.alphaworks.ibm.com/tech/tra
IBM Pattern Modeling and Analysis Tool for Java Garbage Collector 分析IBM JVM的GC日志
http://www.alphaworks.ibm.com/tech/pmat
IBM Thread and Monitor Dump Analyzer for Java 分析javacore文件(java dump)
http://www.alphaworks.ibm.com/tech/jca
HeapAnalyzer 分析heap dump文件
http://www.alphaworks.ibm.com/tech/heapanalyzer
Diagnostic Tool for Java Garbage Collector
http://www.alphaworks.ibm.com/tech/gcdiag