远程调试与监控 --jmx & remote debug

栏目: Java · 发布时间: 6年前

内容简介:监控和调试功能是应用必备的属性之一,其手段也是多种多样。一般地,我们可以通过:线上日志, zabbix, grafana, cat 等待系统做一问题留底,有问题及时报警,从而达到监控效果。而对于应用的调试,我之前的文章也提到了几个工具,当然,我对于 arthas 是调试赞扬的。请参考:

监控和调试功能是应用必备的属性之一,其手段也是多种多样。

一般地,我们可以通过:线上日志, zabbix, grafana, cat 等待系统做一问题留底,有问题及时报警,从而达到监控效果。

而对于应用的调试,我之前的文章也提到了几个工具,当然,我对于 arthas 是调试赞扬的。请参考: 线上应用调试利器 --Arthas

但有句老话: 一千个人眼里有一千个哈姆雷特!所以,你应该要知道更多的方式。

本文来看看咱们另一个调试调试与监控方式!

1. jmx 怎么样 ?

百科解释: JMX(Java Management Extensions,即 Java 管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。

简单来说就是,通过jmx,你可以直接观察到jmx管理的东西,从而达到实时监控的效果!

要监控效果,最简单的方式,是直接使用 jvisualvm 直接连接到远程进行观察,如下:

远程调试与监控 --jmx & remote debug

如果想要更改 jmx 的值,则还是要写点代码的,进行反射后就可以更改了!

2. jmx 如何开启?

如果你对如上的结果还比较满意,那么,你应该考虑下怎么开启jmx了!

其实很简单,一般借助框架进行操作,而应用自身则配置一个 jmx 端口就行了!

-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=8573

这样开启后,就可以本地连接进行查看了。当然了,如上操作是危险的,请慎重!

远程调试与监控 --jmx & remote debug

另外,我们一般可以多安装一个插件, Thread Inspector 以便在出现问题时及时查看线程信息!

3. remote debug 如何?

remote debug , 看起来有点高大上。至少我自己想来,这种实现方式应该是复杂的!

个人觉得有两个难点:

1. 如何连接到远程进程中debug,关键是远程是以 run 的形式进行的?

2. 远程的代码如何与本地对应?

4. remote debug 如何开启?

同样,如果你觉得这对你还有点用,自然想看下如何开启了。两个步骤!

1. 远程开启调试功能!

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8739

2. ide 开户远程 debug!

远程调试与监控 --jmx & remote debug

就ok 了!


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

文本上的算法——深入浅出自然语言处理

文本上的算法——深入浅出自然语言处理

路彦雄 / 人民邮电出版社 / 2018-3-1 / 69.00元

本书结合作者多年学习和从事自然语言处理相关工作的经验,力图用生动形象的方式深入浅出地介绍自然语言处理的理论、方法和技术。本书抛弃掉繁琐的证明,提取出算法的核心,帮助读者尽快地掌握自然语言处理所必备的知识和技能。本书主要分两大部分。第一部分是理论篇,包含前3章内容,主要介绍一些基础的数学知识、优化理论知识和一些机器学习的相关知识。第二部分是应用篇,包含第4章到第8章,分别针对计算性能、文本处理的术语......一起来看看 《文本上的算法——深入浅出自然语言处理》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试