Java:JConsole和JVisualVM如何连接远程java进程

一、远程java进程配置

采用无认证登录方式的配置方式,java进程最少需要配置如下项:

-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=1099
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=192.168.1.13

 以上都加入到启动命令行中可能有点长,也有简单的方式,只用添加如下JVM参数:

-Dcom.sun.management.config=/app/data/jmx.properties

 如果采用认证方式,jmx.properties中的内容:

com.sun.management.jmxremote
com.sun.management.jmxremote.port=1099
com.sun.management.jmxremote.authenticate=true
com.sun.management.jmxremote.ssl=false

com.sun.management.jmxremote.password.file=/app/data/jmx.password

com.sun.management.jmxremote.access.file=/app/data/jmx.access

jmx.access中内容:

controlRole readwrite

jmx.password中内容:

controlRole  12345678

二、本地配置

如果使用JMX的方式连接,则JMX URL:

service:jmx:rmi:///jndi/rmi://192.168.1.13:1099/jmxrmi

如果使用jstatd,则先要创建文件jstatd.all.policy,写入内容

grant codebase "file:${java.home}/../lib/tools.jar" {
    permission java.security.AllPermission;
};

 然后,启动命令

jstatd -J-Djava.security.policy=C:/jstatd.all.policy -p 2000

 JVisualVM就可以连接此jstatd了。

参考文档

jvisualvm远程监控tomcat
https://ihuangweiwei.iteye.com/blog/1219302
https://www.cnblogs.com/wuweidong/p/5815348.html
https://www.cnblogs.com/leocook/p/jvisualvmandtomcat.html

Monitoring and Management Using JMX Technology
https://docs.oracle.com/javase/8/docs/technotes/guides/management/agent.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值