如何使用jdk自带的监控工具jvisualvm监控工具

jstack用于打印出给定的java进程IDcore file或远程調试服务的Java堆栈信息如果是在64位机器上,需要指定选项"-J-d64"Windowsjstack使用方式只支持以下的这种方式:

为了便于对远程服务器中的tomcat进行管理尤其是能监控tomcat的运行状态,获取参数是非常重要的而如果能以直观的形式查看,那是极好的

废话不多说,下面就进行简单的描述:

//包括服务器的IP监控端口(未被使用的),尤其是authenticate表示认证远程连接监控的时候是否需要账号密码,这里不需要直接可以连接,后面講需要的情况下如何设置

3在windows中打开与服务器上同版本的jdk,在bin目录下点击jvisualvm.exe后左边包括本地监控与远程监控,右击远程选添加远程主机主机名就是服务器IP,确定;

      保存后点击远程的下一级中刚添加的远程主机右击添加JMX连接,这个时候只要添加设置好的端口即可连接上垺务器进行监控了

如果觉得不够安全,也是可以添加认证的那就需要把authenticate改成true,还需要引入认证文件简单描述下应该能看懂:

a,到服务器的jre(不是开发环境所以jre足够)的lib下文件management路径下复制jmxremote.password.template,把复制的文件去除后缀template然后进去把最后两行的注释去除,这两行是账号和密码可修改

b,改模式添权限:把password文件的操作模式改成600当前用户可读写rw

然后就可以在有认证情况下远程连接了。

jdk的功能还有很多遇到的时候再研究,慢慢就成长了

  jdk中自带了很多工具可以用于性能分析位于jdk的bin目录下,jvisualvm工具可以以图形化的方式更加直观的监控本地以及远程的java进程的内存占用线程状态等信息。

  此时使用hostname -i命囹再次查看主机名已经修改过来了:

在“远程”上右键-->添加远程主机-->填写主机名:

点击确定后,远程选项下多了一条刚才添加的主机列表右键-->添加JMX连接,如下图填入JMX远程连接端口号9999,并勾选“不要求ssl连接”:

点击确定后左侧多了一条pid为6822的远程连接,6822是远程tomcat的pid:

双击该連接在右侧可以动态查看jvm的概览信息,监控CPUjava堆,元空间类,线程等数据:

  在添加JMX连接的时候经常会出现如下报错:

此时可以從以下几个方向检查:

我要回帖

更多关于 jdk自带的监控工具 的文章

 

随机推荐