zoukankan      html  css  js  c++  java
  • 配置 jvisualvm 监控Java虚拟机

    https://blog.csdn.net/xiaoye319/article/details/103454246

    无论是监控局域网还是远程java虚拟机运行的情况,都可以用jdk自带的jvisualvm进行远程监控。本文就是介绍如何配置在jvisualvm上远程监控虚拟机的运行情况。

    一、前提说明

    1、JMX能监控CPU、堆、类、线程的使用情况,但是无法监控GC的具体情况,如果需要监控GC的具体情况,得配置jstatd远程监控。

    2、配置远程监控,前提是得设置好服务器的ip,如果使用hostname -i看到的是127.0.0.1,那么就是ip没配置好,自己去/etc/hosts中配置好实际ip。

    二、配置JMX远程监控

    1、配置参数配置

    如果是用启动jar包,那么在启动脚本或者启动命令中加入以下命令:

    -Dcom.sun.management.jmxremote.port=5050 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.0.40

    如果使用tomcat启动的,那么就在tomcat的tomcat/bin/catalina.sh中加入以下命令:

    export CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote

    -Djava.rmi.server.hostname=192.168.0.40 -Dcom.sun.management.jmxremote.port=5050 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
    参数说明:

    -Dcom.sun.management.jmxremote.port:配置一个远程服务器上未被占用的端口

    -Dcom.sun.management.jmxremote.ssl=false:配置 JMX 是否启用 ssl

    -Dcom.sun.management.jmxremote.authenticate=false:配置 JXM 是否启动鉴权

    -Djava.rmi.server.hostname:配置服务器 IP

    2、jvisualvm配置JMX

    点击远程添加你的服务器ip,然后选中服务器右击选择添加JMX连接,然后输入端口号,端口号就是上面命令中你设置的端口号,如果你选择了启动ssl校验,就输入服务器的登录账号和密码,然后点击确定。

    然后你就能看到虚拟机的运行情况了,但是无法看到Visual GC的具体情况,如果想看具体的GC情况,继续配置jstatd。

    三、配置jstatd远程监控

    1、在远程服务器的任何一个目录创建文件jstatd.all.policy,我是在/home目录下创建的,在文件中加入以下内容

    1.  
      grant codebase "file:/usr/local/jdk1.8.0_161/lib/tools.jar" {
    2.  
      permission java.security.AllPermission;
    3.  
      };

    注意:jdk的路径根据自己的具体jdk配置

    2、启动jstatd

    jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=192.168.0.40 -J-Djava.rmi.server.logCalls=true -J-Djava.net.preferIPv4Stack=true -p 5056

    参数说明:

    -J-Djava.security.policy=jstatd.all.policy 指jstatd.all.policy文件的定路径

    -J-Djava.rmi.server.logCalls=true:是否打印日志

    -J-Djava.rmi.server.hostname=192.168.19.114:配置服务器地址

    -p:指定端口

    然后jps查看jstatd是否启动了,如果启动了再进行下一步

    3、jvisualvm配置jstatd

    选中服务器右击选择添加jstatd连接,然后输入端口号,端口号就是上面命令中你设置的端口号,然后点击确定

    左边就是你是服务器上运行的进程了,选择你想看的进程,在监控中你会发现CPU的监控看不了,所以如果想看CPU就配置JMX连接,如果想看GC回收情况,则配置jstatd

  • 相关阅读:
    利用libxml2解析xml文档
    找出两个链表的第一个公共结点
    [转载]风雨20年:我所积累的20条编程经验
    inotify监测文件及文件夹
    [转载]linux下svn常用指令
    利用zlib进行数据压缩
    2013腾讯编程马拉松初赛:郑厂长系列故事——体检
    Socket编程之简单介绍
    C语言中static的作用总结
    写程序实现wireshark的抓包功能
  • 原文地址:https://www.cnblogs.com/yunman/p/14210053.html
Copyright © 2011-2022 走看看