码迷,mamicode.com
首页 > 其他好文 > 详细

VisualVM监控JVM

时间:2016-09-19 19:47:35      阅读:93      评论:0      收藏:0      [点我收藏+]

标签:

VisualVM远程监控JVM

内存溢出问题

方式一:jststd

[root@work]# java -version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
[root@work]# cd /usr/java/jdk1.7.0_79/bin/
[root@bin]# vim jstatd.all.policy 
  1 grant codebase "file:/usr/java/jdk1.7.0_79/lib/tools.jar" {
  2     permission java.security.AllPermission;
  3 };
###以守护进程方式运行
[root@bin]#  ./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=IP & 

 

遇到的问题:

Could not create remote object  
access denied ("java.util.PropertyPermission" "java.rmi.server.ignoreSubClasses" "write")  
java.security.AccessControlException: access denied ("java.util.PropertyPermission" "java.rmi.server.ignoreSubClasses" "write")  
        at java.security.AccessControlContext.checkPermission(AccessControlContext.java:366)  
        at java.security.AccessController.checkPermission(AccessController.java:560)  
        at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)  
        at java.lang.System.setProperty(System.java:781)  
        at sun.tools.jstatd.Jstatd.main(Jstatd.java:139)  

原因:$JAVA_HOME即(/usr/java/jdk1.7.0_79/)填错
安全最好配置JAVA_HOME

方式2:

1. 修改远程机器JDK配置文件 (我这里远程机器是linux).
   a.进入JAVA_HOME\jre\lib\management\目录
   b.拷贝jmxremote.password.template这个文件到当前目录, 并改名为jmxremote.password
     c.打开jmxremote.password文件,去掉 # monitorRole  QED 和 # controlRole  R&D 这两行前面的注释符号

2. 修改远程机器上需要被监控的程序的配置文件 

   a.进入JAVA_HOME\bin

   b.打开catalina.sh文件,加入如下信息:
        JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=IP    
                                                                                                             

                                                     -Dcom.sun.management.jmxremote.port=18999
                                                     -Dcom.sun.management.jmxremote.ssl=false 
                                                     -Dcom.sun.management.jmxremote.authenticate=false"
   c.重启Tomcat服务.

VisualVM下载地址:visual.java.net/download.html

VisualVM监控JVM

标签:

原文地址:http://www.cnblogs.com/xfbc/p/5886109.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!