gpt4 book ai didi

linux - JProfiler:帮助分步指南在远程服务器 ubuntu 上集成 jprofiler

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:22:51 26 4
gpt4 key购买 nike

我正在尝试分析在 ubuntu 上运行 tomcat7 的远程服务器。我已阅读多个教程,但无法运行它。

远程服务器上的 JProfiler 集成

首先我下载 jprofiler9并在远程系统上提取

wget http://download-keycdn.ej-technologies.com/jprofiler/jprofiler_linux_9_2.tar.gz
tar -xzf jprofiler_linux_9_2.tar.gz

然后运行以下命令

jprofiler9/bin# ./jpintegrate

它询问了我一些信息并生成了 2 个文件

  1. startup-jp.sh 我猜这个文件是从 startup.sh 创建的,因为上面的向导要求我提供启动脚本的路径(/usr/share/tomcat7/bin/startup.sh) 以便在同一文件夹中创建新文件。
  2. config-jp.xml 同一个向导要求我输入配置文件的名称,并附有一些说明:可以导入JProfiler GUI 快速连接到应用服务器

startup-jp.sh修改内容如下

# The following lines have been added by the
# application server integration wizard of JProfiler

CATALINA_OPTS="-agentpath:/home/ubuntu/jprofiler9/bin/linux-x64/libjprofilerti.so=port=8383 $CATALINA_OPTS"
export CATALINA_OPTS

# end of modifications

exec "$PRGDIR"/"$EXECUTABLE" run "$@"

启动 JProfiler在这里我很困惑如何运行 jprofiler,我猜运行 startup-jp.sh 将启动分析器

它运行成功,但是当我使用 JProfiler GUI 从我的本地系统连接到这个远程服务器时,服务器生成一些关于找不到路径的错误

这里是运行 startup-jp.sh 后的控制台日志

root# /usr/share/tomcat7/bin/startup.sh
Using CATALINA_BASE: /usr/share/tomcat7
Using CATALINA_HOME: /usr/share/tomcat7
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar
JProfiler> Protocol version 55
JProfiler> Using JVMTI
JProfiler> JVMTI version 1.1 detected.
JProfiler> 64-bit library
JProfiler> Listening on port: 8383.
JProfiler> Instrumenting native methods.
JProfiler> Can retransform classes.
JProfiler> Can retransform any class.
JProfiler> Native library initialized
JProfiler> VM initialized
JProfiler> Waiting for a connection from the JProfiler GUI ...
JProfiler> Using dynamic instrumentation
JProfiler> Time measurement: elapsed time
JProfiler> CPU profiling enabled
Oct 28, 2016 4:27:31 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/common/classes], exists: [false], isDirectory: [false], canRead: [false]
Oct 28, 2016 4:27:31 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/common], exists: [false], isDirectory: [false], canRead: [false]
Oct 28, 2016 4:27:32 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/server/classes], exists: [false], isDirectory: [false], canRead: [false]
Oct 28, 2016 4:27:32 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/server], exists: [false], isDirectory: [false], canRead: [false]
Oct 28, 2016 4:27:32 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/shared/classes], exists: [false], isDirectory: [false], canRead: [false]
Oct 28, 2016 4:27:32 AM org.apache.catalina.startup.ClassLoaderFactory validateFile
WARNING: Problem with directory [/usr/share/tomcat7/shared], exists: [false], isDirectory: [false], canRead: [false]
Oct 28, 2016 4:27:32 AM org.apache.catalina.startup.Catalina initDirs
SEVERE: Cannot find specified temporary folder at /usr/share/tomcat7/temp
Oct 28, 2016 4:27:32 AM org.apache.catalina.startup.Catalina load
WARNING: Unable to load server configuration from [/usr/share/tomcat7/conf/server.xml]
Oct 28, 2016 4:27:32 AM org.apache.catalina.startup.Catalina initDirs
SEVERE: Cannot find specified temporary folder at /usr/share/tomcat7/temp
Oct 28, 2016 4:27:32 AM org.apache.catalina.startup.Catalina load
WARNING: Unable to load server configuration from [/usr/share/tomcat7/conf/server.xml]
Oct 28, 2016 4:27:32 AM org.apache.catalina.startup.Catalina start
SEVERE: Cannot start server. Server instance is not configured.
JProfiler> Keeping VM alive until frontend disconnects.

显然它无法查看不同的所需目录(奇怪),请注意我从未运行 startup.sh 来启动我的 tomcat7,而是使用 service tomcat7 start,可能是这里的问题。这是我的tomcat7的目录结构

/usr/share/tomcat7/

drwxr-xr-x   2 root root 4.0K Oct 28 04:21 bin
-rw-r--r-- 1 root root 39 Feb 21 2014 defaults.md5sum
-rw-r--r-- 1 root root 2.0K Feb 21 2014 defaults.template
drwxr-xr-x 2 root root 4.0K Oct 10 06:06 lib
-rw-r--r-- 1 root root 53 Feb 21 2014 logrotate.md5sum
-rw-r--r-- 1 root root 118 Feb 21 2014 logrotate.template

/var/lib/tomcat7/

drwxr-xr-x  3 tomcat7 tomcat7 4.0K Apr 21  2016 common
lrwxrwxrwx 1 root root 12 Jun 19 2015 conf -> /etc/tomcat7
lrwxrwxrwx 1 root root 17 Jun 19 2015 logs -> ../../log/tomcat7
drwxr-xr-x 3 tomcat7 tomcat7 4.0K Apr 21 2016 server
drwxr-xr-x 3 tomcat7 tomcat7 4.0K Apr 21 2016 shared
drwxrwxr-x 6 tomcat7 tomcat7 4.0K Oct 27 06:10 webapps
lrwxrwxrwx 1 root root 19 Jun 19 2015 work -> ../../cache/tomcat7

通过在 startup-jp.sh 中添加以下行来修复以上异常

export CATALINA_BASE="/var/lib/tomcat7/"

现在它能够找到丢失的文件夹

新问题

现在的问题是我的本地 jprofiler gui 花费了太多时间(比如如果我重新启动脚本它捕获了一些条目但很快就捕获了

CPU usage for tomcat is 197.5% reveled by top command

因此本地 jprofiler GUI 不会加载任何其他内容。我无法确定是什么导致了如此多的 CPU 使用率。

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
5496 tomcat 38 18 3005m 675m 17m S 197.5 9.0 21:09.55 java

最佳答案

集成已正确完成并按预期工作。

根据你的文件系统中的权限,你必须以root身份执行startup-jp.sh,所以执行

sudo sh startup-jp.sh

关于linux - JProfiler:帮助分步指南在远程服务器 ubuntu 上集成 jprofiler,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40298916/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com