摘要
在网上看了大部分教程都没有jconsole 和jvisual 对jar 包 的监控,要么是没有效果。
这里也整理我遇到的坑
启动服务
监控java 程序 增加启动参数
java \
-Djava.rmi.server.hostname=10.12.3.123 \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=10086 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-jar demo.jar --spring.profiles.active=dev >nohup 2>&1 &
由于启动参数过长,我们可以定义系统环境变量来表示 在/etc/profile 最后一行增加
export JAVA_OPTS='-Djava.rmi.server.hostname=10.12.3.123 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=10086 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false'
然后 source /etc/profile
是文件生效。
启动时我们就可以用如下这个脚本。
nohup java $JAVA_OPTS -jar demo.jar --spring.profiles.active=dev >nohup 2>&1 &
JMX端口为10086;
遇到的坑:
- 如果不设置服务器主机名 -Djava.rmi.server.hostname 到时候可能连不上。
- 跟随项目启动会开启几个随机端口,最好将防火墙关闭否则连接不上的,当然这个也可以查看启动的端口然后开启,比较麻烦
连接结果图如下
参考链接: