使用Jconsole小记

JConsole毕竟是JDK自带的东西,功能虽然没有一些商业软件那么强大,但是稳定性好,在大压力情况下也不会发生什么问题。而且,提供了相对全面的系统监控功能,还是值得一用的。

JConsole

JConsole是一个基于JMX的GUI工具,用于连接正在运行的JVM,不过此JVM需要使用可管理的模式启动。如果要监控JAVA虚拟机,以weblogic为例,在环境变量里加上:com.sun.management.jmxremote



   要启动JConsole,运行   JDK_HOME/bin/jconsole一个用于连接的对话框将会打开。对话框的Local标签列出了所有本地正在运行的JVM,还包含进程的ID等信息。



以上是监控本地的JVM。
——————————————————————————
下面来探讨一下远程实用Jconsole



.首先什么都不用装哦,只要你本机有jdk,作为java人,我们不可能没有吧,哈哈哈

2.echo $JAVA_HOME,找出java安装路径

3.自己寻觅一个路径mkdir  jcon_pwd,我们暂时命名为$your_path/jcon_pwd

4.执行cp  $JAVA_HOME/jre/lib/management/jmxremote.pwd.template   $your_path/jcon_pwd/jmxremote.pwd

5.vi  jmxremote.pwd,修改monitorRole  *****(your password)

6.在env.sh文件中的JAVA_OPTS参数中,加入:-Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.pwd.file=/home/zhao/brmms/deploy/bin/jcon_pwd/jmxremote.pwd -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

注意port=9999,要是一个没有人使用的端口。

7.执行hostname -i ,如果显示的是127.0.0.1,需要修改/etc/hosts文件

#127.0.0.1         localhost localhost.localdomain localhost

<server  ip>      localhost localhost.localdomain localhost

8. 检查 vi /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=主机名  //在这里可以修改主机名

9.启动jboss server,./startws.sh -d<serverip>

10.netstat -na|grep <listenport>, 如 netstat -na |grep 9999  查看后为listen状态

11.打开客户端%JAVA_HOME%/bin,双击打开jconsole.exe

-------------------------------------------华丽的分割线-----------------------------------------

12.指定连接参数:
远程主机: 服务器的真实IP地址
端口: port($JAVA_OPTIONS中-Dcom.sun.management.jmxremote.port指定的端口)
用户名:monitorRole 
密码:your password(jmxremote.pwd中设置的密码)

13. 点击“连接”,OK~~

经过上述13步~你就可以通过jdk的自带工具,对服务器端jvm的各项参数进行监控啦~~相当滴直观~~呵呵



————————————————————————
官方文档:
You can use jconsole to monitor both local applications (those running on the same system as jconsole) and remote applications (those running on other systems). 

Note: Using jconsole to monitor a local application is useful for development and prototyping, but is not recommended for production environments, because jconsole itself consumes significant system resources. Remote monitoring is recommended to isolate the jconsole application from the platform being monitored.

详情见:http://java.sun.com/j2se/1.5.0/docs/guide/management/jconsole.html

猜你喜欢

转载自tonyxu841106.iteye.com/blog/553157
今日推荐