java启动参数里加: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=d:\dump\logs -Xloggc:d:\dump\logs\gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps
前两句是内存溢出时自动保存内存dump,貌似只是第一次出现时保存,连续的话,后面的不存。
后面的几句,是每次gc时保存gc的日志,可以参考看看。 -------------------------- tomcat的话,linux的话 在tomacat的bin下,增加一个setenv.sh文件,
JAVA_OPTS="$JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/log -Xloggc:/data/log/ticketGC.log -XX:+PrintGCDetails - XX:+PrintGCDateStamps -XX:-PrintTenuringDistribution"
windows好像是SET JAVA_OPTS...,多个SET吧 -------------------------- 分析dump文件,可以到 http://www.eclipse.org/mat/downloads.php 下载一个独立Stand-alone Eclipse RCP Applications,运行,打开dump文件就能自动分析了。
|