加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

将Java进程转移到“解剖台”之前,法医都干了什么?

发布时间:2019-10-17 17:02:58 所属栏目:建站 来源:小姐姐味道
导读:作为法医,不怕高度腐朽的遗体,也不怕错综伟大的案情。最怕的,是没留下任何对象。空无一物,任何高深的技能,富厚的履历,都无从动手。 出产情形错综伟大,几分钟前活蹦乱跳的历程,而今就岌岌可危的躺在哪里,苟延残喘。作为第一时刻发明的眼见者,必然

jstack将会获取其时的执行栈。一样平常城市多次取值,我们这里取一次即可。这些信息很是有效,可以或许还原你的java历程中线程环境。

  1. top -Hp $PID -b -n 1 -c > $DUMP_DIR/top-$PID.dump 2>&1 

为了可以或许获得越发风雅的信息,我们行使top呼吁,来获取历程中全部线程的cpu信息。这样,就可以看到资源到底是淹灭在什么处所。

5、高级替补

  1. kill -3 $PID 

偶然辰,jstack并不可以或许运行。有许多缘故起因,好比java历程险些不相应了。我们会实行向历程发送kill -3信号。这个信号是java历程享有的,将会打印jstack的trace信息到日记文件中。是jstack的一个替补方案。

  1. gcore -o $DUMP_DIR/core $PID 

对付jmap无法执行的题目,也有替补,那就是GDB组件中的gcore。将会天生一个core文件。我们可以行使如下的呼吁去天生dump

  1. ${JDK_BIN}jhsdb jmap --exe ${JDK}java --core $DUMP_DIR/core --binaryheap 

瞬时态和汗青态

xjjdog这里建设两个名词。瞬时态是指其时产生的,快照范例的元素;汗青态是指凭证频率抓取的,有牢靠监控项的资源变换图。

上面有许多信息,好比CPU,好比体系内存等,瞬时态的代价就不如汗青态来的直观一些,由于它还存在一个基线题目。以是假若有监控系同一类的器材,将柔美的多。

但对付lsof,heap等,这种没偶然刻序列观念的稠浊信息,无法进入监控体系,发生有效代价,就只可以或许通过瞬时态举办说明。这种环境下,瞬时态的代价反而更大一些。

我已经把上面的进程,写成了一个shell剧本。你可以在github上找到它。点击左下角的查察原文,也能和它晤面。

https://github.com/sayhiai/shell

但值得留意的是,漫衍式情形的妨碍缘故起因,每每会出乎料想,你的这份单机证据,也许就只是一个表象。它没有撒谎,但它背后的意义,每每对题目本质举办了错误的引导。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读