JVM调优--04---dump文件分析 、arthas在线排查工具

article/2025/8/31 15:23:00

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • dump文件
        • java堆转储快照
    • 1. dump文件内容
    • 2. 获取dump文件的方法
      • 指令
      • jvisualvm 工具
    • 3. dump文件分析工具
    • 3.1 jhat 命令
    • 3.2 使用 jvisualvm 工具
    • 3.3 使用 MAT 工具
  • arthas在线排查工具
    • 官网
        • https://arthas.aliyun.com/doc/
    • 在线排查工具----arthas
    • 启动:
    • arthas 常用命令


dump文件

java堆转储快照

1. dump文件内容

在这里插入图片描述

2. 获取dump文件的方法

在这里插入图片描述

指令

在这里插入图片描述

jvisualvm 工具

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. dump文件分析工具

  • 使用 jhat 命令
  • 使用 jvisualvm 工具
  • 使用 MAT 工具

3.1 jhat 命令

  • jdk自带,jdk9以后就取消了

在这里插入图片描述

  • 访问端口 7000
    在这里插入图片描述
  • 使用OQL查找特定问题对象

在这里插入图片描述
在这里插入图片描述

3.2 使用 jvisualvm 工具

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3.3 使用 MAT 工具

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

arthas在线排查工具

  • Arthas 是Alibaba开源的Java诊断工具

官网

https://arthas.aliyun.com/doc/

在这里插入图片描述
在这里插入图片描述

在线排查工具----arthas

为什么需要在线排查?

  • 在生产上我们经常会碰到一些不好排查的问题,例如线程安全问题,用最简单的threaddump或者heapdump不好查到问题原因。为了排查这些问题,有时我们会临时加一些日志,比如在一些关键的函数里打印出入参,然后重新打包发布,如果打了日志还是没找到问题,继续加日志,重新打包发布。对于上线流程复杂而且审核比较严的公司,从改代码到上线需要层层的流转,会大大影响问题排查的进度

启动:

在这里插入图片描述
在这里插入图片描述

arthas 常用命令

  • jvm观察jvm信息
  • thread定位线程问题
  • dashboard 观察系统情况
  • heapdump + jhat分析
  • jad反编译
    动态代理生成类的问题定位 第三方的类(观察代码)版本问题(确定自己最新提交的版本是不是被使用)
  • redefine 热替换
    目前有些限制条件:只能改方法实现(方法已经运行完成),不能改方法名, 不能改属性 m() -> mm()
  • sc - search class
  • watch - watch method
  • 没有包含的功能:jmap

http://chatgpt.dhexx.cn/article/isAI32g7.shtml

相关文章

Dump文件生成,内容,以及分析

​​​​​​​本文用到的工具只是简单介绍,让你有个感官认识,重点是核查思路的熟悉 为啥需要dump内存文件 服务器CPU,内存占用空间飙升,或者GC频繁,首先需要排除的就是内存泄露,即内存中没有的对象的空间…

java dump可视化在线内存分析工具

方便分析内存、线程使用情况、死锁等情况的在线可视化分析dump工具 一般也可以自己装MAT,JProfiler等工具,但是这个在线可视化HeapHero分析dump非常全面,总之,非常nice。 HeapHero https://heaphero.io/index.jsp 导出dump并上传…

mac pro m1:安装dump文件内存分析工具——MAT

0. 引言 本文主要针对mac m1下安装Jprofiler进行讲解,安装核心步骤同样适用于其他系统 1. 安装 如果使用的是eclipse可以在插件中直接安装MAT,因为我使用的是idea开发,所以选择独立安装MAT工具 1、下载地址:https://www.eclip…

使用WinDbg分析Windows dump文件方法

需要使用WinDbg工具来分析windows系统产生的dump文件,此工具属于Windows SDK的一个组件,在微软官方网站可以下载(链接)。 在安装Windows SDK的过程中,可以选择只安装WinDbg(Debugging Tools for Windows&a…

jvm mat分析dump文件

jvm调优中,经常使用dump来分析是否存在大对象导致频繁full gc,以下为使用步骤: 一、获得服务进程 二、生成dump文件 jmap -dump:formatb,filexxx.dump pid 三、下载mat工具 地址:https://www.eclipse.org/mat/downloads.php 注意,…

jvm---6.1、dump 文件分析工具 IBM HeapAnalyzer

IBM HeapAnalyzer 工具 官网: https://www.ibm.com/developerworks/community/groups/service/html/communityview?communityUuid4544bafe-c7a2-455f-9d43-eb866ea60091 官网翻译如下; HeapAnalyzer允许通过启发式搜索引擎查找可能的Java™堆泄漏区域…

linux dump 分析工具,使用 Crash 工具分析 Linux dump 文件

与具有众多的内存转储机制一样,Linux 下也有众多的内存转储分析工具,下面将会逐一做简单介绍。 Lcrash 是随 LKCD 一起发布的一个内内存储分析工具。随着 LKCD 开发的停止,lcrash 的开发也同时停止了。目前它的代码已经被合并进入 Crash 工具…

.NET -- 使用Dump文件分析异常

目录 1. Dump文件 2. 程序崩溃时自动生成Dump文件 2.1 注册表生成 2.2 代码生成 3. 手动生成Dump文件 3.1 任务管理器生成 3.2 VS生成 4. Dump文件调试分析 4.1 简易崩溃测试代码 4.2 VS2022调试 4.3 非本机测试 1. Dump文件 Dump文件是进程的内存镜像。可以把程序…

java heapdump 分析工具_heapdump分析工具

heapdump分析工具是一款强大的数据分析工具,它可以用图表的形式来展现相应的分析结果,在使用heapdump分析工具之前请先安装JDK1.6。 运行环境 1.运行环境要求JDK 1.6或以上 如果JDK版本过低,报错如下: Exception in thread "…

php中dump是什么文件怎么打开,Win8/Win10 dump文件怎么打开?dump文件分析工具下载及使用教程...

从Win8系统开始到Win10,蓝屏界面大变脸,不再显示详细的代码错误文件,看起来是友好多了不过对用户查找回题原因来说就麻烦不少了~好在Win8/win10 在蓝屏时会生成dump文件,我们可以使用专用工具进行分析解读查找到问题所在。下面小编…

Dump文件分析工具 - MAT图文解析

/ 前言 / 在讲解Mat工具之前我们先来看下几个关于Dump/文件的问题 Dump文件是什么 Dump文件是进程的内存镜像。可以把程序的执行状态通过调试器保存到dump文件中 我们拿到Dump文件有什么用的? 假如JVM因为内存溢出的原因宕机了, 而程序的日志里面并没有关于溢出所在对象的信息…

【华为云技术分享】干货分享丨jvm系列:dump文件深度分析

摘要:java内存dump是jvm运行时内存的一份快照,利用它可以分析是否存在内存浪费,可以检查内存管理是否合理,当发生OOM的时候,可以找出问题的原因。那么dump文件的内容是什么样的呢? JVM dump java内存dump是…

Java的dump文件分析及JProfiler使用

Java的dump文件分析及JProfiler使用 1 dump文件介绍 从软件开发的角度上,dump文件就是当程序产生异常时,用来记录当时的程序状态信息(例如堆栈的状态),用于程序开发定位问题。 idea配置发生OOM的时候指定路径生成dump文件 # 指定…

获取和分析Dump的几种工具简介

最近在进一步学习support技能的时候,了解到分析Dump的重要性,经过学习,做一些笔记。 一、什么是Dump文件。 Dump文件时进程的内存镜像。可以把程序的执行状态保存到Dump文件中。Dump文件分为内核模式Dump和用户模式Dump。其中内核模式Dump是…

JVM-通过MAT工具对dump文件进行分析

文章目录 MAT工具介绍下载安装使用OverviewHistogramDominator_TreeOQLThread_OverviewLeak Suspects MAT工具介绍 MAT(Memory Analyzer Tool),一个基于Eclipse的内存分析工具,是一个快速、功能丰富的JAVA heap分析工具,它可以帮助我们查找内…

错误号码2058:Plugin caching sha2_password could not be loaded

安装SQLyog之后,新建接口,输入密码,点击连接,发现出现了如下的错误: 1.错误的原因 SQLyog加密方式出现了错误,这时由于 插件缓存——sha2_密码无法进行加载所导致的。 2.解决方法 在开始菜单中输入命令…

2023/06/28

文章目录 1.export和export default的区别2.npm和cnpm的区别3.npm run dev/serve的区别4.slice、splice和split的区别 1.export和export default的区别 模块功能主要由两个命令构成:export和import。export命令用于规定模块的对外接口,import命令用于输…

02.07 SQLyog连接MySQL数据库时报2058错误(转载)

使用SQLyog连接MySQL时报了这样一个错 “错误号码2058,Plugin caching——sha2_passward could not be loaded:******** ”(乱码) 将报错信息翻译:“插件缓存——sha2_密码无法进行加载”,这是由于你的SQLyog mysql 密码加密方法变了&#…

【C++】2058:【例3.10】简单计算器(信息学奥赛)

好了,今天的内容就是有简单计算器了,内容的详细意思也就是一个最简单的计算器支持,-,*,/四种运算然后根据输入输出结果。(博主正在冲200粉丝,喜欢的赶紧关注!!&#xff0…

【MySQL2058】MySQL远程连接错误码2058

Docker安装的MySQL,突然服务器登录正常,但是使用SQLyog登录报异常: MySQL错误号码 2058上网上巴拉巴拉半天,各种说法都有,最后综合网上各种教程方案,解决了自己的问题,最后将自己的解决方案罗列…