由于某些原因,我无法使用VisualVM在生产服务器上连接java pid。
我已经在setenv.sh文件中传递了jvm参数:
export JAVA_OPTS="-Dcom.sun.management.jmxremote=true \
-Dcom.sun.management.jmxremote.port=9999\
-Dcom.sun.management.jmxremote.authenticate=false\
-Dcom.sun.management.jmxremote.ssl=false \
-Djava.rmi.server.hostname=192.168.1.2"
并将此文件放入$ / usr / share / tomcat7 / bin /目录 并且为了进行身份验证,将jmxremote.password和jmxremote.access文件放入“/ var / lib / tomcat7 / conf /”目录。
File permissions :
**$sudo chown tomcat7:tomcat7 /var/lib/tomcat7/conf/jmxremote.*** is ensuring that both file owned by tomcat7
**$ sudo chmod 0600 /var/lib/tomcat7/conf/jmxremote.*** // access right for tomcat7
$ sudo cat jmxremote.password
admin alonegk
$ sudo cat jmxremote.access
admin readwrite
同样的事情在我在dev服务器以及我的localhost上运行时运行良好。
感谢您的期待。
答案 0 :(得分:1)
请尝试以下操作:
export JAVA_OPTS="-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=9999\
-Dcom.sun.management.jmxremote.authenticate=false\
-Dcom.sun.management.jmxremote.ssl=false \
-Djava.rmi.server.hostname=192.168.1.2"
由于身份验证设置为false,因此用户名和密码在此处没有任何意义。
如果您想使用用户名和密码,则应附加以下两个字符串:
-Dcom.sun.management.jmxremote.password.file=<PATH>/jmxremote.password
-Dcom.sun.management.jmxremote.access.file=<PATH>/jmxremote.access