Windows客户端的JProfiler远程监控Linux上的Tomcat

1.测试环境
服务器:RedHat Linux 3.4.3-9.EL4(内核版本 2.6.9-5.EL),Tomcat5.5.20,Sun
JDK 1.5.0_09,JProfiler 4.3.2 for linux(安装包:jprofiler_linux_4_3_2.sh)

客户端:Windows XP,JProfiler 4.3.2 for windows(安装包:jprofiler_windows_4_3_2.exe)

2.JProfiler软件下载地址 http://www.ej-technologies.com/

3.客户端 JProfiler 安装 略

4.服务器端 JProfiler 安装:
把 jprofiler_linux_4.3.2.sh 上传到到服务器,假设路径为 /opt/jprofiler

# cd /opt/jprofiler
# chmod +x *.sh
# ./jprofiler_linux_4.3.2.sh -c
按照提示来安装,提示都很简单,不在多说。安装路径选择 /opt/jprofiler4

注意,这里的 -c 意思是用字符方式来安装,如果机器上没有 X 则加上该参数.

5.客户端连接配置
1). 运行 JProfiler 。第一次打开会有向导,忽略它。
2). 选择 Session->Integration Wizard->New Remote Integratation
3). 选择 On a remote computer;Platform of remote computer 选择 Linux x86/AMD 64;Next
4). 输入服务器 IP ;Next
5). 输入服务器上的 jprofiler 的安装路径,如 /opt/jprofiler4 ;next
6). 选择服务器的 JDK 环境,这里是:Sun,1.5.0,hotspot;next
7). 输入端口:这里是默认值 8849;next
8). 选择启动模式:这里选第一种 wait for a connection from the jprofiler GUI;next
9). 这里会列出需要在服务器端做的配置(very important):

Integration type: [Generic application]
Selected JVM: Sun 1.5.0 (hotspot)
Startup mode: Wait for JProfiler GUI

(1) Please insert

-agentlib:jprofilerti=port=8849  -Xbootclasspath/a:/opt/jprofiler4/bin/agent.jar

into the start command of your remote application right after the java command.

(2) Please add

/opt/jprofiler4/bin/linux-x86

to the environment variable LD_LIBRARY_PATH.

A remote session named Remote application on 192.168.40.15 will be created that connects to a running instance of the remote application that is started with the modified start command.


6.服务器端的配置
(1)修改系统环境配置文件 /etc/profile ,增加

JPROFILER_HOME=/opt/jprofiler4/bin/linux-x86
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$JPROFILER_HOME

(2)修改TOMCAT启动文件catalina.sh,添加-agentlib:jprofilerti=port=8849  -Xbootclasspath/a:/opt/jprofiler4/bin/agent.jar 内容到CATALINA_OPTS中;
“-agentlib:jprofilerti=port=8849  -Xbootclasspath/a:/opt/jprofiler4/bin/agent.jar ” 此内容由客户端软件生成

CATALINA_OPTS="$CATALINA_OPTS -Xms128m -Xmx128m $JPDA_OPTS -agentlib:jprofilerti=port=8849  -Xbootclasspath/a:/opt/jprofiler4/bin/agent.jar"

7.Reboot Linux and startup Tomcat using startup.sh;
   The log of tomcat which is $CATALINA_HOME/logs/catalina.out will show:

JProfiler> Protocol version 23
 JProfiler> Using JVMTI
 JProfiler> 32-bit library
 JProfiler> Listening on port: 8849.
 JProfiler> Native library initialized
 JProfiler> Waiting for a connection from the  JProfiler GUI 

8.启动客户端软件
   点击jprofiler菜单 session>start center>Open Session
   Available session configurations中列出了刚才配置的连接,选中使用就OK了!!

9.The log of tomcat which is $CATALINA_HOME/logs/catalina.out will show:

JProfiler> Using dynamic instrumentation
 JProfiler> Time measurement: elapsed time
 JProfiler> CPU profiling enabled
 JProfiler> Hotspot compiler enabled
 JProfiler> Starting org/apache/catalina/startup/Bootstrap 

10.当中断JProfiler连接时
   The log of tomcat which is $CATALINA_HOME/logs/catalina.out will show:

JProfiler> Disconnected. Waiting for reconnection.
 JProfiler> Listening on port: 8849.

各中间件配置

1、  服务端安装JProfiler(与客户端版本一致)

2、  客户端配置连接:

A)、session——integration wizards——New remote integration

B)、选择远程监控的平台windows,点击next

C)、选择jdk版本,如果服务器是64位的jdk则勾上64 bit jvm,点击next

D)、选择等待连接,点击next

E)、输入服务端ip地址,点击next

F)、输入服务端机器上的jprofiler的安装路径,点击next

G)、端口默认8849,点击next

H)、提示需要在服务端插入下面的启动命令:-agentpath:C:\jprofiler7\bin\windows\jprofilerti.dll=port=8849

客户端配置完成

 

 

3、 服务端,在C:\jboss-4.2.3.GA(2)\jboss-4.2.3.GA\bin下面编辑run.bat

加入下面的启动项-agentpath:C:\jprofiler7\bin\windows\jprofilerti.dll=port=8849

如set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx512m -agentpath:C:\jprofiler7\bin\windows\jprofilerti.dll=port=8849

 

启动jboss,看到waiting for a connection from the JProfiler GUI… 就可以了

 

4、 配置好服务端后,继续点击客户端的next,然后再点击finish,连接即可

注:

A)、如果是tomcat则在编辑C:\my\apache-tomcat-6.0.14\apache-tomcat-6.0.14\bin下面catalina.bat

如set JAVA_OPTS=%JAVA_OPTS% -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties" -agentpath:C:\my\jprofiler_windows_7_1_2\jprofiler7\bin\windows\jprofilerti.dll=port=8849

 

B)、如果是weblogic则编辑C:\bea\weblogic92\samples\domains\workshop\bin下面的setDomainEnv.cmd

 

如:

set JAVA_OPTIONS=%JAVA_OPTIONS% %JAVA_PROPERTIES% -Dwlw.iterativeDev=%iterativeDevFlag% -Dwlw.testConsole=%testConsoleFlag% -Dwlw.logErrorsToConsole=%logErrorsToConsoleFlag% -agentpath:C:\jprofiler7\bin\windows\jprofilerti.dll=port=8849

 

C)、如果是linux中的tomcat,则编辑/usr/local/apache-tomcat-6.0.35/bin下面的catalina.sh文件,在java_opts后面加上

-agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"

(注意-agent参数要加载“之内)

如:

if [ -z "$LOGGING_MANAGER" ]; then

  JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"

 

else

  JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER -agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"

 

D)、如果是linux中的jboss,则编辑/usr/local/jboss-4.2.3.GA/bin下面的run.sh文件,在java_opts后面加上

-agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849

(注意-agent参数要加载“之内)

 

如:

if [ "$linux" = "true" ]; then

   JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true -agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"

Fi

E)、如果是linux中的weblogic,则编辑/home/weblogic/user_projects/domains/Test/bin下面的setDomainEnv.sh

 

如:

JAVA_OPTIONS="${JAVA_OPTIONS} ${JAVA_PROPERTIES} -Dwlw.iterativeDev=${iterativeDevFlag} -Dwlw.testConsole=${testConsoleFlag} -Dwlw.logErrorsToConsole=${logErrorsToConsoleFlag} -agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"

export JAVA_OPTIONS

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

另一种方式(方便的操作linux+weblogic)

 

1、 客户端连接配置:

A)、session——new window,选择an application server,locally or remotely,点击next

B)、选择监控的服务器(weblogic9.2),点击next

C)、选择远程监控机器平台

D)、选择jdk版本

E)、选择立即启动,随时可以连接jprofiler,(即手动启动服务后,随时jprofiler可以连接)

F)、输入远程ip地址

G)、输入远程机器上的jprofiler的路径

H)、选择远程配置文件的路径(完成后要把本地生成的config.xml拷贝到这)

                  选择拷贝配置文件到这个路径

I)、这里选择提前在服务器上拷贝下来的startWebLogic.sh文件

J)、显示端口,点击next

K)、提示要在服务端操作的内容,点击next

2、 服务端

A)、把C:\Users\xxxxxxx\.jprofiler7\config.xml拷贝到服务器的/home/weblogic/user_projects/domains/Test/bin路径下(要设置下这个文件的可操作权限chmod a+x /home/weblogic/user_projects/domains/Test/bin/config.xml) 

B)、把F:\test\startWebLogic_jprofiler.sh拷贝到/home/weblogic/user_projects/domains/Test/bin路径下并授于可操作权

C)、./startWebLogic_jprofiler.sh启动weblogic即可

第一行是连接成功

第二行和第三行是断开

第四行是重新连接

时间: 2024-10-15 18:13:36

Windows客户端的JProfiler远程监控Linux上的Tomcat的相关文章

转载:JProfiler远程监控LINUX上的Tomcat过程细讲

来源于xuwanbest的博客 所谓"工欲善其事,必先利其器",好的工具确能起到事半工倍的作用.我用到的最多的就两个JConsole 和JProfiler .JConsole监控系统内存变化情况,如果有内存溢出的话,垃圾回收将会呈现锯齿状.发现问题以后,使用JProfiler,在小压力(或无压力)的情况下监控对象变化,定位内存溢出原因. JProfiler是一款Java的性能监控工具.可以查看当前应用的对象.对象引用.内存.CPU使用情况.线程.线程运行情况(阻塞.等待等),同时可以查

[转帖]JProfiler远程监控Linux上Tomcat的安装过程细讲(步骤非常详细!!!)

JProfiler远程监控Linux上Tomcat的安装过程细讲(步骤非常详细!!!) https://www.cnblogs.com/yjd_hycf_space/p/7727757.html 原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/12115262.html

jvisualvm 远程监控Linux下的tomcat

前一段测试系统崩溃过一回,所以想远程监控一下jvm的运行情况,我在网上也找了不少文章和办法,试了好几次都没成功,今天算试成功了,但是不太 完美,因为需要将Linux的防火墙关掉才可以连接,我尝试将连接的端口号加到iptables中,重启防火墙,也不行.所以先记录下来,以后再看看是什 么问题. 1.linux下tomcat安装目录下的bin文件夹中的catalina.sh 端口号:1099,Linux主机IP: 192.168.193.129 检查host是否是127.0.0.1 , 执行命令 h

[转帖]Jprofiler远程连接linux项目监控

Jprofiler远程连接linux项目监控 https://blog.csdn.net/junzhen_chen/article/details/72911427 原创junzhen_chen 发布于2017-06-08 11:12:18 阅读数 2460 收藏展开 1     1.本地系统下安装windows版Jprofiler1.1     版本:jprofiler_windows-x64_9_1_1.exe1.2     操作:打开安装.exe文件,根据安装向导一路next完成安装1.3

Windows远程调试Linux上的C++程序:Eclipse+MingW+Samba+GDBserver

转自:http://www.heimizhou.com/windows-remote-debug-linux-c-plus-plus.html 最近有一个需求,就是需要在Windows上远程调试Linux上的C++程序,然后我就从网上搜集各种方法,但是发现很多方法中是先在Windows上编译程序,然后再从Linux上编译程序,最后进行远程调试,这种方法使我的调试不能进入源代码,后来经过尝试发现只需要在Linux上编译程序即可.下面从三个方面:需要安装的软件.安装与配置.配置远程调试,来介绍一下我

使用visualvm远程监控LINUX服务器JVM

使用visualvm远程监控LINUX服务器JVM 一.JMX方式: 1. 首先要修改JDK中JMX服务的配置文件,以获得相应的权限: 进入$JAVA_HOME所在的根目录的/jre/lib/management子目录下, a. 将jmxremote.password.template文件复制为jmxremote.password b. 调整jmxremote.access和jmxremote.password的权限为只读写,可以使用如下命令 chmod 600 jmxremote.access

Zabbix添加对Windows 客户端的风扇转速监控等...

接上文: Zabbix添加对Windows 客户端CPU温度的监控:http://blog.51cto.com/mikeyoo/2046571 在这篇文章通过利用SpeedFan的监控日志功能实现了对CPU温度监控,但SpeedFan监控项目不止温度这一项,下面我们来把这些利用起来~~ 添加对CPU风扇转速的监控 首先打开SpeedFan添加对风扇的Log PS:我的这台机检测到两个风扇,不确定哪个是CPU风扇,于是下载了鲁大师对CPU进行跑分,然后就能观察到FAN1转速直接拉起,所以可以确定F

使用Windows上的Eclipse 远程调试 linux下的Tomcat

1:修改Linux上Tomcat的catalina.sh,第一行添加declare -x CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9528" 2:在eclipse中, 点 "Run->Debug...",选 "Remote Java Application",按提示新建,"Project"一项选择需要调

Windows 远程在Linux下 发布tomcat web程序

Linux虚拟机太卡了,但是我要在Linux下调试程序啊.干脆使用ssh远程登录到我的Linux下,就可以在windows下修改程序,只是发布的时候,发布到linux上就可以了. 一.Linux安装ssh sudo apt-get install ssh 使用securecrt远程登录到Linux 二.linux安装sz.rz sudo apt-get install lrzsz sz---从服务器拿文件   rz--向服务器传文件 三.本地发布出war包,上传到Linux tomcat目录 四