[心缘地方]同学录
首页 | 功能说明 | 站长通知 | 最近更新 | 编码查看转换 | 代码下载 | 常见问题及讨论 | 《深入解析ASP核心技术》 | 王小鸭自动发工资条VBA版
登录系统:用户名: 密码: 如果要讨论问题,请先注册。

[备忘]java内存溢出时,自动做内存dump的方法~

上一篇:[转载]jstat的一点小解释
下一篇:[备忘]java通过ProcessBuilder调用命令行

添加日期:2016/8/4 9:49:25 快速返回   返回列表 阅读2158次
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文件就能自动分析了。
 

评论 COMMENTS
没有评论 No Comments.

添加评论 Add new comment.
昵称 Name:
评论内容 Comment:
验证码(不区分大小写)
Validation Code:
(not case sensitive)
看不清?点这里换一张!(Change it here!)
 
评论由管理员查看后才能显示。the comment will be showed after it is checked by admin.
CopyRight © 心缘地方 2005-2999. All Rights Reserved