使用VisualVM远程监控Tomcat方法

概要

通过 VisualVM 远程监控 Tomcat , 以便性能分析,可以看到CPU使用率, 获取堆栈快照, 手动堆栈回收, 死锁线程分析等等, 还可以安装其他插件。

本文将记录配置过程, 以便自己后续用到查看。

配置过程

配置Tomcat的startup.sh文件

在$CATALINA_HOME/bin/startup.sh 倒数第二行(也就是exec "$PRGDIR"/"$EXECUTABLE" start "$@"一行上边)写入下面的内容:

export CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Djava.rmi.server.hostname=*.*.*.* YOUR SERVER IP
-Dcom.sun.management.jmxremote.port=7003
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password
-Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access" 

截个图, 看看startup.sh最后20行的数据。

参数说明:

-Dcom.sun.management.jmxremote 启用JMX远程监控
-Djava.rmi.server.hostname=*.*.*.* 你的tomcat服务器IP地址
-Dcom.sun.management.jmxremote.port=8003 jmx连接端口
-Dcom.sun.management.jmxremote.ssl=false 是否ssl加密
-Dcom.sun.management.jmxremote.authenticate=true 远程连接需要密码认证
-Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password 指定连接的用户名和密码配置文件
-Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access 指定连接的用户所拥有权限的配置文件

创建账号密码和权限配置文件

关于jmxremote.access和jmxremote.password  这两个文件jdk中已经有了,

把这两个文件复制到 $CATALINA_HOME/conf/ 目录下,修改一下名称

文件内容如下:

[root@localhost tomcat8]# cat conf/jmxremote.password
monitorRole 111111
controlRole 222222 

[root@localhost tomcat8]# cat conf/jmxremote.access
monitorRole readonly
controlRole readwrite

修改jmxremote.password权限

[root@localhost tomcat8]# chmod 600 conf/jmxremote.password

然后, 重启Tomcat使之生效。

运行自己的JVisualVM

jvisualVM的可执行文件位置如下:

 

添加主机

远程,添加主机,输入服务器的ip:

 

"右键"->"添加JMX连接", 添加JMX连接和登陆验证

 

完成,可以显示了 

 

 

 

posted @ 2018-04-28 15:21  南极山  阅读(2076)  评论(0)    收藏  举报