JVisualVM远程监控
本文主要转自:http://blog.iamzsx.me/show.html?id=394002
http://www.wl566.com/wz/64022.html
1. 通过JMX方式监控远程linux上运行java程序
远程服务器:
要求在执行java程序时,加入若干参数:
java -Dcom.sun.management.jmxremote.port=40124 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=10.2.3.4 MultiThreads
说明:
注意:这些命令需要在同一行!
-Dcom.sun.management.jmxremote.port=40124:// 选取未被占用的端口
-Dcom.sun.management.jmxremote.authenticate=false //不使用密码验证
-Djava.rmi.server.hostname=10.2.3.4 // 填运行程序的主机的ip。可以通过hostname -i 查看本地IP。如果是127.0.0.1,则需要修改,否则远程连接时本地无法区分。
可以通过在/etc/hosts中添加(外网ip 计算机名)记录,我当时添加了(10.2.3.4 xzhangcentosxzhangcentos)这条记录,
否则会报“java.net.MalformedURLException:Local host name unknown: java.net.UnknownHostException: xzhangcentos:xzhangcentos: 未知的名称或服务”错误。
MultiThreads:class文件的文件名。也可以加-jar xxxx.jar。
例如:java -Dcom.sun.management.jmxremote.port=40124 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar foo.jar
在这种方式下,java程序中断,监控连接随之中断。
jvisualvm无法直接把远程的Java程序的heap dump到本地的机器上。当我们点击jvisualvm的heap dump时,只能把heap dump到远程机器上的某台目录,
然后还需要我们自己去把heap dump文件拷贝到本地,再用jvisualvm执行“文件”-“装入”,打开来分析。
2. 通过JMX方式监控远程Tomcat
如果Tomcat是部署在Linux/Unix主机上:
首先在Tomcat/bin目录下执行./shutdown.sh,关闭Tomcat服务。然后在catalina.sh中设置JAVA_OPTS处加上(原来JAVA_OPTS设置可能是注释掉的,不用管它,直接在这行后加):
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false - Dcom.sun.management.jmxremote.ssl=false"
其中9999为设置的JMX端口号。
保存,关闭。再执行./startup.sh启动Tomcat服务。
然后,就可以通过上节中的方法添加对远程Tomcat的监控了。
需要注意的是,如果要再关闭Tomcat服务,需要将加入的这一行注释掉。否则关闭不成功。
3. 通过jstatd方式监控远程linux上运行的java程序
使用jstatd的时候我们需要先建一个文件jstatd.all.policy,内容如下:
permission java.security.AllPermission;
};
接下里我们使用下面的命令来启动jstatd(注意,启动jstatd的用户要求跟启动Java程序的用户一致,不然jstatd就没有权限访问程序的信息了):
本文主要转自:http://blog.iamzsx.me/show.html?id=394002
http://www.wl566.com/wz/64022.html
JVisualVM远程监控的更多相关文章
- 使用jvisualvm远程监控tomcat(阿里云ECS)
写在前面: 使用jvisualvm远程监控tomcat(阿里云ECS),连接是报错:service:jmx:rmi:////jndi/rmi:IP:端口// 连接到 IP:端口,网上找了很多资料, ...
- jvisualvm远程监控Tomcat
网上已经有很多这方面的资料,但有些很杂乱,这里做了整理总结. 一.Java VisualVM 概述 对于使用命令行远程监控jvm 太麻烦 . 在jdk1.6 中 Oracle 提供了一个新的可视化的. ...
- 【jvisualvm远程监控配置】
第一步:首先通过hostname -i 和ifconfig命令,查看一下IP地址是否一致 如果不一致,修改hosts的IP地址:vi /etc/hosts 把ip地址和ifconfig的地址修 ...
- 使用jvisualvm远程监控Java程序
使用Java自带的jvisualvm调试Java程序,可以查看CPU.内存.线程等信息,还可以进行Dump,无疑是一个利器 由于客户端是Windows.服务端是Linux,并且是最小安装的Linux, ...
- jvisualvm远程监控 Visual GC plugin NOT supported for this JVM
1. 找到jdk安装目录. 2. 进入jdk的 bin目录,新建文件jstatd.all.policy. 3.编辑jstatd.all.policy文件,内容如下: 4. 给jstatd.all.po ...
- Jconsole/jvisualvm远程监控weblogic中间件配置
1.进入linu操作界面,进入到启动服务目录下 2.选择要监控的服务的启动项,进入到编辑状态(注意:要先将该文件进行备份),如下图所示 3.修改USER_AGRS域,添加如下内容,注意修改IP USE ...
- jvisualvm远程监控jvm设置
有些时候,需要对特定环境中的Java应用进行实时性能分析,大部分非开发和测试环境,一般都是用jvisualvm进行基本检测以最小化对系统的影响(其开启后,负载影响大约20%-30%),jvisualv ...
- jvisualvm远程监控 visualgc插件 不受此jvm支持问题
https://yq.aliyun.com/ziliao/478212 1.修改远程服务器上java设置 vi $JAVA_HOME/jre/lib/security/java.policy 在 ...
- Java jvisualvm 远程监控tomcatt
第一步 在远程tomcat 的bin目录下的start.sh 文件中添加一些内容(添加在exec "$PRGDIR"/"$EXECUTABLE" start & ...
随机推荐
- iOS - 自动化编译打包(Jenkins)
从xcodebuild到shenzhen,再到Jenkins,完美演绎自动化操作. Features xcodebuild自动构建命令 简介 构建 生成ipa文件 利用 shenzhen 进行打包 J ...
- ArchLinux 添加国内镜像源
$ vim /etc/pacman.d/mirrorlist # 在最前面添加一行,这样就成功添加了网易的源: Server = http://mirrors.163.com/archlinux/$r ...
- php时间戳和日期转换,以及时间戳和星期转换
$this->created_at为时间戳值,转换日期如下 date('m.d',$this->created_at) : y 代表年的后两位如 17 ,Y 代表 2017 , m 代 ...
- 洛谷P2178 品酒大会【后缀数组】【单调栈】
题目描述 一年一度的“幻影阁夏日品酒大会”隆重开幕了.大会包含品尝和趣味挑战 两个环节,分别向优胜者颁发“首席品酒家”和“首席猎手”两个奖项,吸引了众多品酒师参加. 在大会的晚餐上,调酒师 Rainb ...
- PAT天梯赛L2-003 月饼【贪心】
L2-003. 月饼 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不 ...
- 在ubuntu下安装使用latex
参考:https://www.cnblogs.com/longdouhzt/archive/2012/09/27/2706358.html https://jingyan.baidu.com/albu ...
- QtCreator 可以通过 Clang-Tidy 和 CLazy 对你的代码进行静态检查
QtCreator 可以通过 Clang-Tidy 和 CLazy 对你的代码进行静态检查 打开你的工程,点击Analyze -> Clang-Tidy and CLazy 选择你想分析的 cp ...
- wxWidgets与其他工具库的比较(上)
本文是在wxWidgets Wiki上面找到的一篇,对比了wxWidgets和其他一些界面工具的特点.看到很多朋友在网上询问这些库各自的特点,我想先把这篇文章翻译出来——毕竟这也算是一篇官方的文章,应 ...
- Tautology---poj3295(枚举判断是否为永真式)
题目链接:http://poj.org/problem?id=3295 题意:判断是否是永真式,其中 p q r s t 表示逻辑变量其值为0或者1: 枚举所有逻辑变量的值,然后判断是否出现false ...
- ConcurrentLinkedQueue
我们要实现一个线程安全的队列有两种实现方式,阻塞算法.非阻塞算法.使用阻塞算法的队列可以用一个锁(入队和出队用同一把锁) 或两个锁(入队和出队用不同的锁)等方式来实现,而非阻塞的实现方式则可以使用循环 ...