- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VisualVM状态监控.
VisualVM状态监控添加远程监控主机首先,我们先添加一台远程主机(需要监控的主机),如下图:在Remote上面点击右键,选择Add Remote Host,有如下弹出框:在Host name文本框输入远程主机IP(也可添加显示名称)点击“OK”,远程主机添加完成,如下图所示:本地主机启动的JAVA相关程序VisualVM能自动识别,在Application-Local下面能看到,如下图:远程监控主机主要分JMX和JSTATD方式,下面将分别讲解JSTATD方式连接和监控编写jstatd.all.policy安全策略文件jstatd.all.policy文件内容如下:grant codebase file:${java.home}/../lib/tools.jar {permission java.security.AllPermission;};注:该文件主要作用是JDK的安全策略,即允许运行远程相关主机的 jstat jinfo jstack 等JDK分析命令启动jstatd服务将jstatd.all.policy上传到远程Linux服务器,放入某目录,进入该目录,执行如下命令之一:默认端口号启动(默认端口号:1099)Jstatd -J-Djava.security.policy=jstatd.all.policy 或者指定端口号启动Jstatd -J-Djava.security.policy=jstatd.all.policy -p 2020 或者指定主机名和端口号启动Jstatd -J-Djava.rmi.server.hostname=8 -J-Djava.security.policy=jstatd.all.policy -p 2020 如下图:有关Jstatd的具体信息,请参考如下网址:/javase/6/docs/technotes/tools/share/jstatd.html以jstatd方式添加监控如下图:在刚才建立的远程主机AD-50上面点击右键,在弹出层选择Add jstatd Connection…,进入如下界面:如果没有指定端口启动jstatd服务,则这里直接点击“OK”按钮即可,如果指定了端口号, 这里要修改为对应端口号,再点击“OK”按钮这时,以jstatd方式添加监控已经完成,如下图:这里显示刚才所添加的远程监控主机上面有两个Tomcat在运行查看监控界面双击其中一个Tomcat,在右侧主界面显示如下:这时,我们主要可以看到:Overview:如上图,主要显示JVM、系统等的配置信息Monitor:内存、线程、类加载等情况,不能看到CPU的情况,不能进行堆转储等,如下图:Visual GC:垃圾收集情况,如下图:可以看出,单独在该种方式下,不能看到具体的线程情况、不能进行Sampler等采用性能分析,不能进行相关的线程和内存转储操作,一些高级功能还比较欠缺。JMX方式连接和监控添加相关参数-Dcom.sun.management.jmxremote.port=6001-Dcom.sun.management.jmxremote.authenticate=false-Dcom.sun.management.jmxremote.ssl=false在相关JAVA程序中,添加以上JVM虚拟机启动参数,下图为Tomcat JVM启动参数配置: 重启该JAVA程序,是配置生效。以JMX方式添加监控如下图:在刚才建立的远程主机AD-50上面点击右键,在弹出层选择Add JMX Connection…,进入如下界面:如果根据前面参数进行了配置,则端口为6001(可更改),在上图0:后面直接输入6001,点击”OK”即可。这时,以JMX方式添加监控已经完成,如下图:查看监控界面双击其中待JMX下标的Tomcat,在右侧主界面显示如下:这时,我们主要可以看到:Overview:如上图,主要显示JVM、系统等的配置信息Monitor:CPU、内存、线程、类加载等情况能进行堆转储等,如下图(没有曲线,只有数字显示?):注:不要在生产系统进行内存转储Threads:可以看到程序运行的线程运行情况及线程转储,如下图:注:不要在生产系统进行线程转储Sampler:采样分析,可以统计方法调用和线程调用占CPU百分比及JAVA类型占用内存百分比,据此可以进行一些故障及性能方面的分析注:不要在生产系统使用该项功能MBean:略JConsole:略JProfiler:没有?可以看到,单独该种方式下,不能看到Visual GC等部分功能建议一般JMX和jstatd两种方式结合使用,这样两种的功能可以叠加显示并使用
文档评论(0)