Java JMC监控远程tomcat配置

JMC(java mission control)是JDK自带的一个监控JVM的工具,在bin目录下(jmc.exe),监控信息非常丰富,目前还没完全弄懂某些指标。最近开源了,今天花了点时间看看怎么配置监控远程的tomcat。

监控客户端(运行jmc.exe的windows机器)无需怎么配置,只需创建个jmc连接,配置连接信息即可。现在主要关注tomcat端的配置:

1、tomcat无验证模式
增加如下java启动参数:
-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -XX:+UnlockCommercialFeatures -XX:+FlightRecorder

关键参数说明:
-Dcom.sun.management.jmxremote.port=8888 ## 监控端口,客户端连接用
-Dcom.sun.management.jmxremote.authenticate=false ## 表示无需验证
-XX:+UnlockCommercialFeatures -XX:+FlightRecorder ## 开启飞行器功能

2、tomcat有验证模式
增加如下java启动参数:
-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.password.file={CATALINA_HOME}/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file={CATALINA_HOME}/conf/jmxremote.access -XX:+UnlockCommercialFeatures -XX:+FlightRecorder

关键参数说明:
-Dcom.sun.management.jmxremote.authenticate=true ##表示连接时需要用户密码
-Dcom.sun.management.jmxremote.password.file=jmxremote.password
-Dcom.sun.management.jmxremote.access.file=jmxremote.access
## 存放用户密码的文件,其内容如下:
##jmxremote.access:
jmcRole readwrite \
create com.sun.management.,com.oracle.jrockit. \
unregister

##jmxremote.password:
jmcRole tomcatjmc

客户端连接时,填入对应的用户密码即可。

3、配置过程中遇到的错误

a. 启动飞行器时提示需要配置-XX:+UnlockCommercialFeatures -XX:+FlightRecorder
按要求增加启动参数

b. Access denied! Invalid access level for requested MBeanServer operation
tomcat配置了验证模式,但用户权限不足,需要加上前面所提权限

顺便链接一篇https://blog.csdn.net/qq_31666147/article/details/72236040

猜你喜欢

转载自blog.csdn.net/kong2030/article/details/80312417
今日推荐