美文网首页
阿尔萨斯-jvm

阿尔萨斯-jvm

作者: 0012 | 来源:发表于2021-08-07 22:49 被阅读0次

Jvm

jvm 检测工具

阿尔萨斯(Arthas)

安装

wget https://alibaba.github.io/arthas/arthas-boot.jar

或者直接访问网址进行jar包的下载

监控命令常用命令

dashboard(仪表盘)

    dashboard 以仪表盘展示数据信息

Thread (查看线程信息)

    Thread 查看所有运行线程信息
    Thread 编号: 查看指定线程号的详细信息

*** -n 展示最繁忙的线程 ***

    thread -n 3 展示三个最忙得到线程

*** -b 展示当前被阻塞的线程 ***

    thread -b 展示被阻塞的现场  如果出现死锁也会展示出来

*** --State 查看指定状态的线程 ***

    thread --statee Waiting 查看暂停的线程
    thread --state Runnable 查看正在运行的线程

Jvm 查看jvm信息

sys

sysprop 获取系统值

也可以进行修改 sysprop key value

sysenv 查看系统环境变量
vmoption 查看虚拟机信息

sc (search class)查看指定路径下的类信息

-d 显示类的详细信息
-f 显示类内的成员变量信息
sc com.oom.*  -d 

sm (search method) 查看制定个方法信息

-d 显示类的详细信息
-f 显示类内的成员变量信息
sm com.oom.controller.OOMController
sm com.oom.controller.*

getstatic 查看代码内部


getstatic 类名 静态变量

实现在运行过程当中修改代码

1、将修改的类使用jad 进行反编译
2、修改代码内容
3、执行mc将.java文件修改
4、执行redefine命令
jad 反编译(查看源码信息)

*** jad 包路径 + 类 ***

jad com.oom.controller.LockController -d 生成的文件路径
mc 将java 代码编译为字节码
mc java文件路径  -d 生成的.class文件路径
redefine 將生成.class文件加载到jvm运行内存中
redefine f:/OOMController.class

watch 动态监控指定方法(监控方法的调用以及返回值)

*** watch 类全路径 方法名 返回值 ***

watch  com.oom.controller.OOMController saveListInfo returnObj

退出 阿尔萨斯

quit/exit

quit/exit 表示关闭当前Session

stop

stop 关闭 服务

dump 将制定类的字节码生成到制定路径

dump com.oom.controller.OOMController -d F:/

classloader 查看类加载器

classloader -l  查看详细信息类加载器的父类加载器

classloader -a  查看类加载器加载的所有类

classloader -c  查看类的加载器所在路径

monitor 监控方法调用信息


监控方法的调用次数
monitor com.oom.controller.OOMController saveListInfo -c 5

-c 几秒输出一次

watch 实时监控

    -b 调用之前
    -e 出现异常以后sd
    -s 方法返回之后
    -f 方法结束后
 watch com.oom.controller.OOMController txtObj "{params,returnObj}" -x 5 监控指定方法的入参以及出参


trace 查看方法的调用过程

 trace com.oom.controller.OOMController *
 trace com.oom.controller.OOMController * -n 统计指定次数
 trace --skipJDKMethod false com.oom.controller.OOMController * 不跳过底层JDK 所执行的方法

 trace com.oom.controller.OOMController * '#cost > 2'  查询线程执行大于2秒的w

stack 查看调用栈的信息

     stack com.oom.controller.OOMController  saveListInfo

tt 监控方法调用

`` txt
tt -t 查看方法调用

``

基础命令

help

help 展示所有的命令

cat

cat 查看文件内容

grep

只能配合能查出命令的语句后面例如
-i 不区分大小邪恶
-n 显示行号
-m 显示指定行数
thread | grep 

pwd 展示当前路径

cls 清除屏幕

session 展示当前会话信息

rest 重置

version 展示当前服务版本

history 展示命令执行历史

keymap 展示所有快捷键

相关文章

  • 阿尔萨斯-jvm

    Jvm jvm 检测工具 阿尔萨斯(Arthas) 安装 监控命令常用命令 dashboard(仪表盘) Thre...

  • Arthas(阿尔萨斯)JVM诊断工具实践

    1.常用指令记录

  • Alsace BioValley法国阿尔萨斯生物谷

    阿尔萨斯生物谷 Alsace BioValley阿尔萨斯生物谷 地址位于550, bld Gonthier d’...

  • 阿尔萨斯

    背叛了灵魂的王子迅速衰老 我侍立在一旁 他得到黑暗的力量 帮助他重登王位 他吟唱着神秘的法术 孤独的漂泊在 山和海...

  • 阿尔萨斯

    我的孩子,当你出生的时候,整个洛丹伦森林都在低吟着你的名字,阿尔萨斯! 孩子,我骄傲的看着你一天天长大,成为正义的...

  • 浏览器语言代码

    阿尔巴尼亚语 [sq] 阿尔巴尼亚语(阿尔巴尼亚) [sq-AL] 阿尔萨斯语 [gsw] 阿尔萨斯语(法国) [...

  • 世界最美小镇之一,值得有情人共度余生的童话镇——科尔马

    科尔马(法语:Colmar)位于法国阿尔萨斯大区东部,是上莱茵省(阿尔萨斯地区两个省之一)的首府。这个小镇曾被德国...

  • 混沌纪元-光与暗(二)

    (前情提要:暗夜神-阿里波斯为实现人类灭亡计划,抢先命令云雾神-阿尔萨斯囚禁了光明神之女-希亚,而阿尔萨斯似乎和希...

  • 抱歉,阿尔萨斯

    “很抱歉,阿尔萨斯,我不能看着你这么做。” “吉安娜……”阿尔萨斯的眼中透着难以置信,以及无尽的痛苦。“你说过,永...

  • 误会(伪阿凯)

    说明: 这是一个纯粹的误会,吉安娜误会了阿尔萨斯与凯尔萨斯的关系,导致她同意与阿尔萨斯分手,当然最后我留了个结尾,...

网友评论

      本文标题:阿尔萨斯-jvm

      本文链接:https://www.haomeiwen.com/subject/rhhnvltx.html