dump文件 linux,Linux下快速分析DUMP文件「建议收藏」

dump文件 linux,Linux下快速分析DUMP文件「建议收藏」dump文件传输到本地进行分析,常常需要大量的等待时间。使用IBM的eclipse的MAT工具可以直接在服务器上进行快速DUMP分析。运行环境要求linux操作系统JDK8以上下载MAT的linux版本Eclipse的MAT工具下载链接MAT支持各种操作系统,找到Linux版本下载下来#运行uname-m看一下linux是x86_64还是x86的帮助你选择下载那个版本。uname-…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

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

经常使用, 故记录于此

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186766.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C#实现远程关机与远程开机(唤醒)

    C#实现远程关机与远程开机(唤醒)//***********************************远程关机************************************///www.uzhanbao.com///1.关闭远程机防火墙///2.设置远程强制关机系统权限gpedit.msc///3.计算机属性远程设置…

    2022年5月8日
  • jetbrains激活码【2021.10最新】[通俗易懂]

    (jetbrains激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月28日
  • java spel_SPEL表达式注入-入门篇

    java spel_SPEL表达式注入-入门篇SpringExpressionLanguage(简称SpEL)是一种强大的表达式语言,支持在运行时查询和操作对象图。语言语法类似于UnifiedEL,但提供了额外的功能,特别是方法调用和基本的字符串模板功能。同时因为SpEL是以API接口的形式创建的,所以允许将其集成到其他应用程序和框架中。个人理解就是Spring框架中的一种语言表达式,类似于Struts2中的OGNL的东西。一个最基础的…

    2022年9月11日
  • Pytest(6)重复运行用例pytest-repeat

    Pytest(6)重复运行用例pytest-repeat前言平常在做功能测试的时候,经常会遇到某个模块不稳定,偶然会出现一些bug,对于这种问题我们会针对此用例反复执行多次,最终复现出问题来。自动化运行用例时候,也会出现偶然的bug,可以针对单个用例,

    2022年8月6日
  • vue入门教程(一)「建议收藏」

    vue入门教程(一)「建议收藏」1.vue简介1.1vue是什么官网:https://cn.vuejs.org/Vue是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动。1.2vue的特点1)遵循MVVM模式2)编码简洁,体积小,运行效率高,适合移动/PC端开发.

    2022年6月4日
  • Spring学习总结(一)入门

    一、Spring的概述1、什么是SpringSpring:SE/EE开发的一站式框架。一站式框架:有EE开发的每一层解决方案。WEB层 :SpringMVCService层 :Spring的Bean管理,Spring声明式事务DAO层 :Spring的Jdbc模板,Spring的ORM模块2、为什么学习Spring3、常用Spring的版本 &…

    2021年11月30日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号