以对tomcat的性能监控为例,远程配置tomcat,在本地实现对tomcat资源使用的监控。
1.打开tomcat,编辑catalina.sh在
# ----- Execute The Requested Command -----------------------------------------”
这一行前边加入如下配置
CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=172.16.0.87 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true"
解释:
-Djava.rmi.server.hostname=172.16.0.87 #设置被远程监控的程序ip
-Dcom.sun.management.jmxremote.port=12345#远程监控的端口
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=true"#使用密码鉴权
2.在tomcat所使用的jdk中配置密码:
cd $JAVA_HOME/jre/lib/management mv jmxremote.password.template jmxremote.password chmod 600 jmxremote.access jmxremote.password vi jmxremote.password
在末尾处将两行的#号注释去掉设置密码
monitorRole jeffcontrolRole jeff
其中monitorRole为只拥有只读权限的角色,controlRole有更高权限:读写等等。
3.启动tomcat,可以查看相应的端口是否启动
使用netstat -an | grep 12345命令查看端口是否正常启动。
4.在本地的jdk中在bin下运行jconsole。输入相应的ip:port,鉴权的用户名和密码,即可看到jconsole中的相应监控项。
5.jvisualvm的使用方法和jconsole类似。功能更加丰富了。