zoukankan      html  css  js  c++  java
  • jvisualvm.exe监控tomcat、jdk配置

    本地监控:只要打开某个JAVA程序就会自动的加入到本地监控中.
    远程监控:要进行远程监控, 本机的VisualVM就必须和远程的JVM要进行通信, Visualvm目前支持两种remote connection方式.
    分别是jstatd和JMX方式:


    通过JMX连接远程机器, 需要经过下面的配置:
    1. 修改远程机器JDK配置文件 (我这里远程机器是linux).
       a.进入$JAVA_HOMEjrelibmanagement目录
       b.拷贝jmxremote.password.template这个文件到当前目录, 并改名为jmxremote.password
       c.打开jmxremote.password文件,去掉 # monitorRole  QED 和 # controlRole  R&D 这两行前面的注释符号
    2. 修改远程机器上需要被监控的程序的配置文件 (我这里是监控Tomcat容器内部署的应用).
       a.进入TOMCAT_HOMEin目录
       b.打开catalina.sh文件,加入如下信息:
       //对于一台服务器上安装多个tomcat的,JAVA_OPTS改为CATALINA_OPTS
          JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.0.237
                    -Dcom.sun.management.jmxremote.port=18999
                    -Dcom.sun.management.jmxremote.ssl=false
                    -Dcom.sun.management.jmxremote.authenticate=false"
            -server -Xms512m -Xmx1024m -Xmn256m -XX:PermSize=256m -XX:MaxPermSize=1024m
       c.重启Tomcat服务.
    3. 客户端VisualVM配置 (我客户端用的是WinXP).
       a.直接反键点击Remote,选择Add Remote Host...
       b.在弹出的界面中输入远程机器的IP地址(192.168.0.237),这个IP地址会加入到Remote节点下.
       c.反键点击这个IP地址,选择Add JMX Connection, 在弹出的界面中输入刚配置的端口号(18999), 这个连接会加入到该IP节点下.
       d.反键点击这个连接,选择Open.


    jstatd配置:
    1.配置java安全访问,将如下的代码存为文件 jstatd.all.policy放入$JAVA_HOME/bin目录下:
    grant codebase "file:${java.home}/../lib/tools.jar" {
           permission java.security.AllPermission;
     };

    2.修改服务器hosts文件中的IP地址
       要使Java VisualVM成功连接到远程服务器上,服务器端应该在/etc/hosts文件中把本机地址设为本机的IP地址。
       使用hostname -i命令查看,如果显示的是127.0.0.1或者与本机实际IP不一致的话,需要把/etc/hosts文件中相应的地址改为本机实际IP。
       修改/etc/hosts文件:在127.0.0.1下一行增加一行,本机ip  域名/主机名 别名
    3.然后通过如下的命令启动RMI服务:
      jstatd -J-Djava.security.policy=jstatd.all.policy
      或者在$JAVA_HOME/bin目录下建立脚本文件startjstatd.sh:
      nohup ./jstatd -J-Djava.security.policy=jstatd.all.policy &
      此命令将jstatd服务后台运行且将日志文件输出到nohup.out目录下;
    4.在visualVM中建立连接,就可看到jmx和jstatd

    此时就可以看到监控的界面, 从界面上我们可以看到CPU信息,内存信息,统计加载类数量,线程信息.

  • 相关阅读:
    LINQ标准查询操作符及例子(转载)
    Winform Combox 下拉模糊匹配
    在RowDataBound事件中取值的几种方法 转载
    shell脚本作业练习题8.6
    7.31.... 简单的python代码
    shell 脚本——第一节课 bash的基本特性
    shell 脚本——第二节课 重定向和管道符
    730
    应用范例:解析 Yahoo 奇摩股市的各档股票资讯HtmlAgilityPack
    微软一个罕为人知的无敌命令
  • 原文地址:https://www.cnblogs.com/mayibanjiah/p/4229287.html
Copyright © 2011-2022 走看看