发布时间:2025-02-04
浏览次数:0
注意:
观察后,1.3.9的输出不稳定intellij idea 快捷键,必须再触发几次才能查看正确结果的正确结果。匹配跟踪类时,必须控制范围。否则,字节码注入的原理intellij idea 快捷键,如果要恢复正常,则需要重新启动该应用程序。
灰色
说一些出色的功能(部分功能和重叠):
SC -DF XXX:当前类的详细信息,包括源代码位置和结构
跟踪课:我非常喜欢这个功能!您可以尽早看到此功能。打印当前方法调用的时间消耗,并细分每个方法。
只是谈论一个功能
:通过修改的字节码,类内容会更改,并立即生效。因此,您可以在日志中进行日志以查看某个地方的输出。缺点是,该代码的入侵太大了。但是,如果您知道自己在做什么,那真的很好。
其他功能灰色,两者都可以轻松完成,更不用说了。
以前已经判断了许多问题,但是现在灰色,基本上可以解决。再加上生产环境(网络隔离)的问题,基本上不使用它,但仍然必须标记。
请移动官方网站
大杀
实际的插件也可以作为单独的程序打开。
有关详细信息,请移动
爪哇三臂斧,哦,不,是七个
JPS
我只使用一个命令:
sudo -u admin /opt/taobao/java/bin/jps -mlvV
普通用法:
sudo -u admin /opt/taobao/install/ajdk-8_1_1_fp1-b52/bin/jstack 2815
+Java堆栈:
sudo -u admin /opt/taobao/install/ajdk-8_1_1_fp1-b52/bin/jstack -m 2815
金富
您可以看到系统的参数启动,如下所示
sudo -u admin /opt/taobao/install/ajdk-8_1_1_fp1-b52/bin/jinfo -flags 2815
JMAP
两个目的
1。查看堆的情况
sudo -u admin /opt/taobao/install/ajdk-8_1_1_fp1-b52/bin/jmap -heap 2815
2。转储
sudo -u admin /opt/taobao/install/ajdk-8_1_1_fp1-b52/bin/jmap -dump:live,format=b,file=/tmp/heap2.bin 2815
或者
sudo -u admin /opt/taobao/install/ajdk-8_1_1_fp1-b52/bin/jmap -dump:format=b,file=/tmp/heap3.bin 2815
3。看看谁被桩占领?然后与之合作,调查问题只是添加了。
sudo -u admin /opt/taobao/install/ajdk-8_1_1_fp1-b52/bin/jmap -histo 2815 | head -10
JSTAT
有很多JSTAT参数,但足以使用一个
sudo -u admin /opt/taobao/install/ajdk-8_1_1_fp1-b52/bin/jstat -gcutil 2815 1000
JDB
今天,经常使用JDB。
JDB可用于预先开发的调试。
sudo -U管理员/opt // java/bin/jdb -8000。
上述代表性JDB已成功启动。可以设置设置进行调试。
可以看到特定参数
我觉得在许多情况下,我可以看到更多有趣的事物,而且我没有详细描述。查询信息和JMAP工具是基于它的。
sudo -u admin /opt/taobao/java/bin/java -classpath /opt/taobao/java/lib/sa-jdi.jar sun.jvm.hotspot.CLHSDB
更详细的可见r大帖子
想法
钥匙
您不记得捷径,您永远可以记住几次,对吗?
小牛
分析Maven的好帮手。
VM
1。您的班级从哪个文件中加载?
-XX:+TraceClassLoading 结果形如[Loaded java.lang.invoke.MethodHandleImpl$Lazy from D:\programme\jdk\jdk8U74\jre\lib\rt.jar]
2。该应用程序被悬挂在输出转储文件中
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/admin/logs/java.hprof
罐子包冲突
独自写这个不是太多了,对吗?每个人都或多或少地处理了这个烦人的案件。下面我有这么多计划,如果我不相信它,那我就不会这样做吗?
mvn dependency:tree > ~/dependency.txt
玩所有依赖关系
mvn dependency:tree -Dverbose -Dincludes=groupId:artifactId
仅点击指定的和依赖的关系
-XX:+TraceClassLoading
VM启动脚本添加。您可以在开始脚本中查看加载类的详细信息
-verbose
VM启动脚本添加。您可以在开始脚本中查看加载类的详细信息
greys:sc
Grays的SC命令还可以清楚地查看当前类从哪里加载
tomcat-classloader-locate
您可以知道当前类通过以下URL加载的位置
卷发:8006 //? class = org ... xs。
其他
DMESG
如果您发现自己的Java过程默默消失,并且几乎没有线索,那么DMESG可能会拥有您想要的东西。
sudo dmesg|grep -i kill|less
转到关键字。发现的结果与以下方式相似:
[6710782.021013] java invoked oom-killer: gfp_mask=0xd0, order=0, oom_adj=0, oom_scoe_adj=0 [6710782.070639] [] ? oom_kill_process+0x68/0x140 [6710782.257588] Task in /LXC011175068174 killed as a result of limit of /LXC011175068174 [6710784.698347] Memory cgroup out of memory: Kill process 215701 (java) score 854 or sacrifice child [6710784.707978] Killed process 215701, UID 679, (java) total-vm:11017300kB, anon-rss:7152432kB, file-rss:1232kB
以上表明,相应的Java过程被系统OOM杀死,得分为854。
解释监视机器内存资源消耗的OOM(OM)。当机器耗尽时,机制将扫描所有过程(根据某些规则,内存职业,时间等计算),选择最高分数过程,然后杀死以保护机器。
DMESG日志时间转换公式:
如有侵权请联系删除!
Copyright © 2023 江苏优软数字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服务提供商
13262879759
微信二维码