`

java jconsole 远程监控

 
阅读更多
jconsole 远程监控

一. windows 环境下的tomcat采用start.bat启动
二. windows 环境下的tomcat采用服务启动
三. linux 环境下tomcat采用catalina.sh启动
四. linux 环境下非tomcat的远程监控

不带密码验证的


一. windows 环境下的tomcat采用start.bat启动
--------------------
window 环境
采用start.bat启动
在doStart里添加
set CATALINA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8001 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false




二. windows 环境下的tomcat采用服务启动
--------------------
通过win服务启动
在java的opts里添加上面的4项内容, 注意行尾不能带空格





最后, 使用jconsole连接




------------------------------
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/export/home/tomcat/domains/server2/oom.hprof

参数说明
1. -XX:+HeapDumpOnOutOfMemoryError 表示当JVM发生OOM时,自动生成DUMP文件。
2. -XX:HeapDumpPath=存储文件/目录 表示生成DUMP文件的路径



三. linux 环境下tomcat采用catalina.sh启动
--------------------
思路:
1. catalina.sh里把jconsole设置写给JAVA_OPTS
注意:
1. cagtalina.sh stop 时带有jconsole设置的端口号会执行失败
2. tomcat需要指定在JAVA_OPTS里指定hostname=192.168.0.106

实现:
1. 在catalina.sh里找到start的执行区, 把jconsole参数赋给JAVA_OPTS

JAVA_OPTS="-Djava.rmi.server.hostname=192.168.0.106 -Dcom.sun.management.jmxremote -Dcom.sun.man    agement.jmxremote.port=9015 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management    .jmxremote.ssl=false"

如图











四. linux 环境下非tomcat的远程监控
--------------------
linux环境
1.检查linux的hostname, 使用
hostname -i
命令, 如果不是显示127.0.0.1, 则代表成功
否则, 使用hostname命令修改, 如
hostname 10.1.16.25

2.检查端口号是否开通
可以使用netstat命令查看端口是否正常启动, 如
netstat -an | grep 9015


3.启动java程序, 注意-D的三个参数
java -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9015 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -server -cp /local/MsgServer/lib/*:/local/MsgServer/bin dje.msgserver.app.App

*注1:由于-Dcom.sun.management.jmxremote.authenticate=false, 所以不需要输入用户名和密码

*注2:第1步是关键, 很多时候连不上linux都是这个原因

*注3:这上面的配置, 在没有防火墙的情况下是可以的, 但开了防火墙的话, 目前没有解决办法
原因分析:对于RMI来说, 需要2个端口, 1个是服务注册, 另1个是数据传输
很遗憾的是-Dcom.sun.management.jmxremote.port=9015指定的端口号是服务注册
另1个数据传输的端口号是随机的, 所以防火墙没办法提前预配置
要找出那个神秘的RMI数据传输端口, 可以通过:
1.抓包工具 (看图)
2.pid 和 netstat (看图)


通过抓包工具找端口



通过pid和netstat找端口















  • 大小: 99.6 KB
  • 大小: 48.5 KB
  • 大小: 32.8 KB
  • 大小: 29 KB
  • 大小: 37.7 KB
  • 大小: 34.4 KB
  • 大小: 132 KB
  • 大小: 58.1 KB
  • 大小: 78.5 KB
  • 大小: 84.3 KB
  • 大小: 69.3 KB
  • 大小: 79.2 KB
  • 大小: 69.3 KB
分享到:
评论

相关推荐

    jconsole远程监控配置手册(经典)

    ### jconsole远程监控配置手册(经典) #### 一、引言 本文档旨在提供一份详细的jconsole远程监控配置指南,适用于需要对生产环境中的Tomcat应用服务器进行远程监控的场景。通过本指南,用户可以了解到如何正确配置...

    JConsole_远程监控Tomcat_ricky

    ### JConsole 远程监控 Tomcat 服务 #### 1. 概述 JConsole 是一个集成在 Java 开发工具包 (JDK) 中的图形用户界面 (GUI) 工具,它允许用户通过 Java 管理扩展 (JMX) 对正在运行的 Java 虚拟机 (JVM) 进行监控。...

    JConsole(观察分析Java程序的运行)

    #### 四、JConsole连接远程Java程序示例 1. **编写远程Java程序**:假设有一个简单的Java程序运行在IP地址为`192.168.0.181`的远程机器上,需要配置以下JVM参数: - `-Dcom.sun.management.jmxremote.port=8999` ...

    Java远程控制简单实现

    至于“工具”,可能是指使用Java自带的RMI工具或者其他的辅助工具,如JConsole,用于管理和监控远程Java应用程序。 由于没有具体的博客内容,我们无法深入讨论细节。不过,你可以通过提供的博文链接访问原文,了解...

    java远程监控,有源码的

    - "java-remote-control"很可能包含了一个简单的JMX远程监控示例,包括服务器端的MBean实现、MBean Server配置以及客户端的连接和控制代码。 - 开发者可以通过阅读源码了解如何创建和注册MBean,设置JMX连接器,并...

    java 远程监控程序JSN

    Java远程监控程序JSN是一种用于监视和管理分布式Java应用程序的工具。它允许开发者或系统管理员在不中断应用程序运行的情况下收集性能数据、诊断问题并进行优化。JSN(Java Server Monitoring)通常包括各种功能,如...

    xmanage远程打开jconsole

    总结来说,通过xmanage远程打开Jconsole是一种有效的解决Jconsole远程连接问题的方法,它利用了X Window协议和环境变量DISPLAY的特性,使得我们可以在本地机器上直观地监控远程服务器上的Java应用。然而,实施这一...

    Linux下 通过jconsole远程监控weblogic

    JConsole是Java自带的一个可视化管理工具,它可以从本地或远程监控Java应用程序。在JConsole中选择“远程”选项卡,输入WebLogic服务器的IP地址和端口号(例如:`[WebLogic服务器IP]:9000`)。 7. **连接与监控**:...

    kafka监控工具KafkaOffsetMnitor angularjs和css

    【Kafka监控工具KafkaOffsetMonitor详解】 KafkaOffsetMonitor是一款强大的开源监控工具,专为Apache Kafka设计,用于实时监控和分析Kafka集群中的消费者偏移量。它可以帮助管理员跟踪消费者的消费进度,确保数据的...

    使用Jconsole对java的内存使用情况(JVM)进行监控参照.pdf

    使用Jconsole对Java的内存使用情况(JVM)进行监控参照 JDK1.5提供了JMX remote的管理工具Jconsole,可以监控Java运行程序的内存使用情况、活动线程数量、类装载的数量、MBeans的状态、虚拟机的各种信息等,还可以...

    java jvm Jconsole

    它是一个基于Java Management Extensions (JMX)的图形用户界面(GUI)工具,主要用于远程监控和管理正在运行的Java虚拟机(JVM)。借助于JConsole,开发人员或系统管理员能够轻松地监控本地或远程主机上的Java应用程序...

    jconsole.jar下载

    3. **连接远程应用**:要监控远程JVM,需要在应用启动时指定JMX远程访问的端口和密码,例如`-Dcom.sun.management.jmxremote.port=9010 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management....

    84_Java远程监控系统.zip

    Java远程监控系统是一种用于实时监测和管理分布式Java应用程序的技术,它可以帮助开发者和系统管理员了解应用的性能、资源消耗以及可能出现的问题。在这个名为"84_Java远程监控系统.zip"的压缩包中,很可能是包含了...

    jconsole.1.8.0jar

    《深入解析jconsole.1.8.0.jar及其在Java应用监控中的作用》 在Java开发和运维领域,工具的高效使用是提升工作效率的关键。jconsole作为Java平台提供的一款强大的性能监视工具,对于理解应用程序的运行状态至关重要...

    使用jconsole监听远程Tomcat服务的方法

    JMX(Java Management Extensions)是Java平台的管理扩展,它允许远程监控和管理Java应用程序。当Tomcat服务器配置好JMX之后,可以使用JConsole来连接到远程Tomcat服务器上的JMX代理。 为了实现远程监控,需要在...

    如何利用 JConsole观察分析Java程序的运行.pdf

    JConsole 是一个内置 Java 性能分析器,可以监控 Java 应用程序性能和跟踪 Java 中的代码。它可以从命令行或在 GUI shell 中运行。 二、启动 JConsole 可以从命令行或在 GUI shell 中启动 JConsole。从命令行启动...

    jconsole使用手册

    3. 提供远程监控功能,能够连接到远程的Java应用程序,实时监控其运行情况。 jconsole的使用场景包括: 1. 监控Tomcat服务器的性能,例如监控内存溢出问题。 2. 监控JBoss服务器的性能,例如监控内存使用率、线程...

Global site tag (gtag.js) - Google Analytics