jconsole监控JVM

本地监控:

Jconsole [processed]

得到进程号(PID)的办法:

Unix/Linux:使用ps查看java进程的PID

Windows:任务管理器查看java或者javaw进程的PID ,也可以使用jps命令行工具 查看PIDs

 

远程监视

 

使用如下命令启动jconsole进行远程监视:

jconsole [hostname:portNum]

 

一、监控tomcat

修改catalina脚本
Windows平台:修改catalina.bat,在dorun和dostart段开头增加一行(注意是一行 ,端口不能与工程访问端口一样):

set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote

-Dcom.sun.management.jmxremote.port="9004"

-Dcom.sun.management.jmxremote.authenticate="false" -Dcom.sun.management.jmxremote.ssl="false"

Unix/Linux平台:修改catalina.sh,在dorun和dostart段开头增加一行(注意是一行 ):

JAVA_OPTS="$JAVA_OPTS "-Dcom.sun.management.jmxremote

-Dcom.sun.management.jmxremote.port="9004"

-Dcom.sun.management.jmxremote.authenticate="false" -Dcom.sun.management.jmxremote.ssl="false"

 

二、监控weblogic

1、确保WLS使用Sun JDK,java -version

2、修改WLS配置文件
windows修改E:\bea\user_projects\domains\base_domainJMX\bin\setDomainEnv.cmd(注意是一行
添加set MEM_ARGS=-Xms512m -Xmx768m -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port="9004" -

Dcom.sun.management.jmxremote.authenticate="false" -Dcom.sun.management.jmxremote.ssl="false"

 

LINUX修改$Domain_HOME/bin/setDomainEnv.sh,为$JAVA_OPTIONS(注意是一行
添加-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9004 -Dcom.sun.management.jmxremote.authenticate=false -

Dcom.sun.management.jmxremote.ssl=false

 

3、解决jconsole远程登录用户名密码问题
$JAVA_HOME\jre\lib\management目录有个jmxremote.password.template,在最下面两行就可以看到,把前面的#号去掉就生效了
 monitorRole  weblogic(用户名 密码,可以随意修改)
 controlRole  weblogic(用户名 密码,可以随意修改)

 

4、编辑host文件
vi /etc/hosts
添加
#127.0.0.1              localhost localhost.localdomain localhost(先注释)
jconsole要访问的ip地址             localhost localhost.localdomain localhost(然后添加这一行)

使用hostname -i查看,返回的应该是jconsole要访问的ip地址,也就是weblogic机器的真实IP地址

 

5、启动./$Domain_HOME/bin/startweblogic.sh

6、查看9004端口是否启动netstat -an | grep 9004

7、在本地jdk/bin目录下启动JCONSOLE程序,在窗口中选择“远程”选项卡,输入IP地址端口号:jconsole要访问的ip地址:9004,用户名/密码:monitorRole/weblogic

 

 

你可能感兴趣的:(JConsole)