dump文件传输到本地进行分析, 常常需要大量的等待时间。 使用IBM的eclipse的MAT工具可以直接在服务器上进行快速DUMP分析。

运行环境要求

linux操作系统

JDK8 以上

下载MAT的linux版本

Eclipse的MAT工具下载链接

MAT支持各种操作系统,找到Linux版本下载下来

#运行uname -m 看一下linux是 x86_64还是 x86的帮助你选择下载那个版本。

uname -m

#x86_64

http://iso.mirrors.ustc.edu.cn/eclipse/mat/1.8/rcp/MemoryAnalyzer-1.8.0.20180604-linux.gtk.x86_64.zip

解压配置MAT基本参数

unzip MemoryAnalyzer-1.8.0.20180604-linux.gtk.x86_64.zip

## 修改MAT的内存大小, 注意这个大小要根据你dump文件大小来的,如果dump文件是5GB那么 这里最好配>5GB 否则会报MAT内存不足的异常

## 修改MemoryAnalyzer.ini 的 -Xmx6024m

vi MemoryAnalyzer.ini

jmap dump整个堆

jmap -dump:format=b,file=jmap.info PID

MAT分析 dump

./ParseHeapDump.sh jmap.info org.eclipse.mat.api:suspects org.eclipse.mat.api:overview org.eclipse.mat.api:top_components

等待结果….

结果会生产如下三个zip文件,很小可以直接拷贝到本机

jmap_Leak_Suspects.zip

jmap_System_Overview.zip

jmap_Top_Components.zip

查看报告结果

有两种查看报告的方法

直接把zip下载到本地,然后解压用浏览器查看index.html

把zip下载到本地, 用MAT可视化工具解析zip

遇到问题

Unable to initialize GTK+

遇到这个问题的话,是因为ParseHeapDump.sh

里面需要调用GTK的一些东西。解决方法:

vi ParseHeapDump.sh

#注释掉 "$(dirname -- "$0")"/MemoryAnalyzer -consolelog -application org.eclipse.mat.api.parse "$@"这一行

#然后加入下面

#注意plugins/org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar要根据你自己本地的文件名做修改调整

java -Xmx4g -Xms4g \

-jar plugins/org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar \

-consoleLog -consolelog -application org.eclipse.mat.api.parse "$@"

然后继续运行

./ParseHeapDump.sh jmap.info org.eclipse.mat.api:suspects org.eclipse.mat.api:overview org.eclipse.mat.api:top_components

问题解决

MAC 如何使用 mat工具

#修改内存大小,默认1G不够用

vi mat.app/Contents/Eclipse/MemoryAnalyzer.ini

运行

sudo mat.app/Contents/MacOS/MemoryAnalyzer

## 1、点击最上面的Overview的 tab

## 2、点击最先面的 Open a Head Dump 就可以选择加载dump文件了

转自: http://www.moheqionglin.com/site/blogs/84/detail.html

经常使用, 故记录于此

dump文件 linux,Linux下快速分析DUMP文件相关推荐

  1. linux删去分区的文件夹,如何恢复 Linux 分区下误删的文件?

    以前总是在网上看到很多人问怎么恢复 Linux 分区下误删的文件.当时并没有仔细关注过,真没想到昨天这事摊我身上了. 大致说说这场悲剧的整个过程吧(为了避免一些不必要的麻烦,本文中的文件夹名和设备名都 ...

  2. 成功解决Windows10环境下运行Linux系统下的.sh文件

    成功解决Windows10环境下运行Linux系统下的.sh文件 目录 解决问题 解决方法 解决问题 Windows10环境下运行Linux系统下的.sh文件 解决方法 .sh是shell scrip ...

  3. linux下分割文件的方法,关于linux系统下分割大文件的方法

    <关于linux系统下分割大文件的方法>由会员分享,可在线阅读,更多相关<关于linux系统下分割大文件的方法(4页珍藏版)>请在人人文库网上搜索. 1.关于 linux系统下 ...

  4. Linux操作系统下/etc/hosts文件

    1. 关于/etc/host,主机名和IP配置文件 Hosts - The static table lookup for host name(主机名查询静态表) Linux 的/etc/hosts是 ...

  5. centos删除文件不释放_Linux运维知识之linux centos下彻底删除文件 解决删除文件文件夹硬盘空间不释放不减少...

    本文主要向大家介绍了Linux运维知识之linux centos下彻底删除文件 解决删除文件文件夹硬盘空间不释放不减少,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助. 最近删除一 ...

  6. 如何恢复 Linux 分区下误删的文件?

    以前总是在网上看到很多人问怎么恢复 Linux 分区下误删的文件.当时并没有仔细关注过,真没想到昨天这事摊我身上了. 大致说说这场悲剧的整个过程吧(为了避免一些不必要的麻烦,本文中的文件夹名和设备名都 ...

  7. linux 大文件按照大小切割,关于linux系统下分割大文件的方法

    关于linux系统下分割大文件的方法 在linux中分割大文件,比如一个5gb日志文件,需要把它分成多个小文件,分割后以利于普通的文本编辑器读取. 有时,需要传输20gb的大文件到另一台服务器,也需要 ...

  8. CentOS Linux系统下swp,swo文件扩展名临时隐藏文件

    CentOS Linux系统下swp,swo文件扩展名的隐藏文件 系统版本: CentOS Linux 6.8 场景: 今天巡检oracle系统的时候,发现/home目录大小超过80%,因一般不允许超 ...

  9. 在linux操作系统下,将文件打包成ISO

    在linux操作系统下,将文件打包成ISO 示例: mkisofs -l -v -r -J -o ./kylin-monitor.iso Kylin-Monitor-x86_64_V1.0/ -l 允 ...

  10. 如何解压服务器系统,如何解压Linux系统下的zip文件

    如何解压Linux系统下的zip文件 发布时间:2020-08-10 09:28:56 来源:亿速云 阅读:76 作者:Leah 这期内容当中小编将会给大家带来有关如何解压Linux系统下的zip文件 ...

最新文章

  1. Docker配置远程连接端口
  2. python中文字符串编码_浅谈python下含中文字符串正则表达式的编码问题
  3. Expected a key while parsing a block mapping. assets: ^
  4. 第十期 华为拓扑-OSPF配置
  5. chrome web获取mac地址_老鬼傻瓜式讲解网络知识:网络设备如何通过IP地址获取设备MAC地址...
  6. [pytorch] 通过一个例子分析torch.matmul矩阵与向量相乘的维度
  7. pythoncharm安装时出错误_python01:pycharm中安装包时所遇到的问题
  8. Tomacat乱码解决
  9. app每秒并发数_性能测试连载 (38) jmeter 线程数与性能测试的负载模式
  10. (89)FPGA写文件激励(fdisplay)
  11. linux svn 安装信息,linux 下安装 subversion(svn) 客户端
  12. solidity return data和revert/require的reason string的获得
  13. 基于uFUN开发板的RGB调色板
  14. ASP.NET MVC2用户界面的巨大改变
  15. C11 多线程初学1
  16. 吴涛作品介绍-易语言和VOLCANO 3D游戏引擎
  17. 社区网格员计算机考试考什么,网格员考试内容是什么,网格员考试科目有哪些...
  18. iOS打包静态库的姿势
  19. JavaScript的发展史
  20. 全面解释java中StringBuilder、StringBuffer、String类之间的关系

热门文章

  1. input 输入时间html,HTML “input time小时分钟”输入控件简介说明
  2. scala和java数据类型转换
  3. JAVA与SQL对应数据类型转换表
  4. jntoo.php,小舍微信分销拼团系统V6.0三级分销系统最新版源码+支持多商户入驻+拼团+微商城+分销...
  5. excel 如何根据身份证号自动匹配性别代码
  6. 商业分析方法与工具总结
  7. k310.4安装客户端提示self-registration error
  8. UE4 植被工具的使用
  9. 51 单片机 建立 文本文件_51单片机如何创建工程文件及生成可烧录的hex文件,并点亮第一颗LED...
  10. 前端实现给页面中的某一部分生成水印