jdk自带有个jvisualvm工具、该工具是用来监控java运行程序的cpu、内存、线程等的使用情况。并且使用图表的方式监控java程序、还具有远程监控能力。不失为一个用来监控tomcat的好工具。
主要有如下的功能:
1.监控本地Tomcat
2. 监控远程Tomcat
3.监控普通的JAVA进程
4、监控远程springboot服务【尝试过但是一直连接失败,报错如下:
无法使用 service:jmx:rmi:///jndi/rmi://111.11.11.111:10001/jmxrmi 连接到111.11.11.111:10001】
...
------------------------------------------------------------------------------------------------------------------------------------------
如下就演示如何监控本地java程序
1、本地jdk小工具的配置
进入到本地的jdk安装目录下(默认位置:jdk文件夹中的bin路径下,C:\Program Files\Java\jdk1.8.0_162\bin),找到jvisualvm.exe,双击打开
2、如图所示, 你可以看到本地所起的应用程序;
3、图一显示本地core模块java程序内置服务器的整体运行状况;【本地为一个springboot 项目】
图一
4、图二:可事实动态显示cpu、堆栈、类、线程的相关信息
图二
5、图三:线程:可实时动态的显示进程的使用状况
图三
6、图四:点击线程Dump按钮可以显示具体的进程的内容,可从此页面查看到进程的具体信息以及报错信息
图四
------------------------------------------------------------------------------------------------------------------------------------------
拓展:
使用jvisualvm来远程监控tomcat
1、右键点击远程-添加远程主机-输入主机ip地址;
2、添加远程主机之后,点击远程主机右键-添加jmx连接:
3、弹出登录框
输入主机名:端口号,如果配置了用户名和密码,请输入用户名和密码。然后点击确定。
点击确定之后、在远程主机下会有一个jmx连接,打开连接,点击监视tab,可以看到如下界面了。
ps:此上我正常走流程下来,确认操作可行,但是如下问题,我点击完确定后,一直无法连接服务器,尝试了很多办法,暂时都没解决,报错内容如下:无法使用 service:jmx:rmi:///jndi/rmi://111.11.11.111:10001/jmxrmi 连接到111.11.11.111:10001,如有大佬会此问题,请多多赐教,下方留下您宝贵的解决办法或者建议吧,Thanks♪(・ω・)ノ