标签: visualvm

VisualVM打破了码头

我正在尝试分析由"mvn jetty:run"运行的应用程序,当我将VisualVM连接到它并单击Profile jetty崩溃时:

Profiler Agent: Waiting for connection on port 5140 (Protocol version: 8)
Profiler Agent: Established local connection with the tool
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6da5e5d4, pid=5124, tid=5704
#
# JRE version: 6.0_16-b01
# Java VM: Java HotSpot(TM) Client VM (14.2-b01 mixed mode windows-x86 )
# Problematic frame:
# V  [jvm.dll+0x1ae5d4]
#
# An error report file with more information is saved as:
# c:\dev\workspaces\credentials\credentialsgui\hs_err_pid5124.log …
Run Code Online (Sandbox Code Playgroud)

java maven-2 visualvm jetty

4
推荐指数
1
解决办法
2619
查看次数

使用Java Visual VM进行性能分析时,CPU /内存选项卡不显示

当我尝试使用Java VisualVM配置我的Java应用程序时,线程,CPU和内存分析选项卡不会显示.除了"-Djava.library.path = lib/native"之外,我的程序没有任何JVM参数,是否需要使用特定的参数来启用性能分析?

其他信息:

  • 用Netbeans构建
  • 使用LWJGL

java profiling visualvm

4
推荐指数
1
解决办法
3131
查看次数

附加Java VisualVM以进行CPU分析会导致JVMTI错误66

当使用VisualVM进行应用程序的cpu-profiling时,我遇到了错误

"Profiler代理错误:带消息:重新定义失败,错误66".

在那之后,它将所有类文件从构建路径复制到我从中启动应用程序的位置.

我试图找到一些关于它的信息,错误代码意味着(根据JVMTI文档):

JVMTI_ERROR_UNSUPPORTED_REDEFINITION_HIERARCHY_CHANGED(66)
直接超类对于新类版本是不同的,或者直接实现的接口集是不同的.

由于分析通常适用于我的环境(Java build 1.7.0_09-b05,Fedora 17 64位).我在Visualvm-docs中尝试过"-Xshare:off",没有任何影响.

由于这是我遇到此问题的唯一Java-SE应用程序,它似乎与我正在使用的库有某种关联.以下是我的类路径:

  • Log4j 1.2.17
  • Apache OpenJPA 2.2.1
  • Commons配置1.9
  • Commons Pool 1.6
  • Postgresql 9.1-901jdbc4
  • imgscalr-LIB-4.2

任何人都可以看到库和错误之间的相关性吗?我真的不知道了.

java visualvm jvmti

4
推荐指数
1
解决办法
3649
查看次数

Eclipse:获取错误因为在Eclipse中安装插件时无法找到jar文件

我正在关注以下网站 http://visualvm.java.net/eclipse-launcher.html ,将VisualVM安装到Eclipse Helios V3.6中,为此我提到了我下载的visualvm_launcher_u1_eclipse_36以及Eclipse菜单窗口--->首选项 - - >已安装的JRE ---> JRE设置中的指向JDK路径C:\ Program Files\Java\jdk1.6.0_27

但是当我试图将这个VisualVM安装到Eclipse中时

Eclipse菜单--->安装新软件--->添加 - >存档选项

我得到以下例外

找不到jar文件:file:/ D:/VisualVM/visualvm_launcher_u1_eclipse_36.zip!/

请参阅与例外相关的图像.

在此输入图像描述

eclipse eclipse-plugin visualvm

4
推荐指数
2
解决办法
2万
查看次数

用于计算字符串匹配条件的OQL语法

请帮我.我在VisualVM中分析我的堆转储.

如何获得值=="0"的所有字符串的数量?我有以下查询:

select count(s) from java.lang.String s where s.toString().equals("0");
Run Code Online (Sandbox Code Playgroud)

但它不起作用.我想收到所有字符串的数量为"0"值,如果它们的大小可能在内存中.

java visualvm oql jvisualvm

4
推荐指数
1
解决办法
3138
查看次数

在 GCE 上的 Docker 中将 VisualVM 或 JConsole 连接到 Java

我正在尝试在远程 Java-in-Docker 进程上进行一些 CPU 采样。

我已经在这里查看了相关问题,并尝试了一切,但无济于事,所以我在这里发布我的设置。

我有一个 Java 进程 (openjdk-8) 在 Google 计算引擎 (GCE) 实例上的 Docker 容器中运行。GCE实例和容器都运行Debian-9。我想将 VisualVM 或 JConsole 连接到我的 Java 进程。

我可以在本地运行我的 docker 容器,并使用 localhost:9010 连接 VisualVM 和 jconsole。

我使用以下命令在 VM 启动脚本中启动容器:

docker run -d -p 9010:9010 <my container>
Run Code Online (Sandbox Code Playgroud)

Dockerfile 还具有:

EXPOSE 9010
Run Code Online (Sandbox Code Playgroud)

由 Dockerfile CMD 启动的 Java 进程具有以下相关参数:

"-Dcom.sun.management.jmxremote", \
"-Dcom.sun.management.jmxremote.port=9010", \
"-Dcom.sun.management.jmxremote.rmi.port=9010", \
"-Dcom.sun.management.jmxremote.local.only=false", \
"-Dcom.sun.management.jmxremote.authenticate=false", \
"-Dcom.sun.management.jmxremote.ssl=false", \
Run Code Online (Sandbox Code Playgroud)

我已使用以下命令在 gcloud 防火墙中打开端口 9010:

gcloud compute firewall-rules create jmx-port --allow=tcp:9010,udp:9010
Run Code Online (Sandbox Code Playgroud)

我已使用 netcat 验证该端口已打开并且可以与其建立 TCP 连接。

我从同一个 Docker …

java jmx visualvm google-compute-engine docker

4
推荐指数
1
解决办法
3529
查看次数

Java Visual VM 是否会影响受监控 JVM 的性能?

我正在考虑使用 Java Visual VM 来分析生产环境。我想监控:

  • CPU使用率
  • GC活动
  • 已用堆
  • 线程状态

这种监控对 JVM 的性能有什么重大影响吗?

java visualvm

4
推荐指数
1
解决办法
2408
查看次数

如何使用 VisualVM 对 Wildfly10 进行 CPU 配置?

问题: 我有一个 J2EE 应用程序,对于使用特定数据集的给定任务(生成一些文件),该应用程序运行速度非常慢。我决定在应用程序上运行 visualvm 分析器以了解问题的性质。该应用程序使用最新的 Java 8 在 Widlfly 10 上运行。

为了避免配置复杂性,分析器(visualvm)和 Wildfly 服务器都在本地运行。

遇到的第一个问题是 JVMTI 错误 62,这是使用-Xverify:none作为 jvm 参数解决的。

第二个问题(阻塞问题)是,如果我在应用程序部署和运行时运行探查器,Wildfly 部署扫描器会抛出如下异常:

13:19:04,476 INFO  [stdout] (*** Profiler Agent Communication Thread) Profiler Agent: Waiting for connection on port 5140 (Protocol version: 15)

13:19:04,517 INFO  [stdout] (*** Profiler Agent Communication Thread) Profiler Agent: Established connection with the tool

13:19:04,847 INFO  [stdout] (*** Profiler Agent Communication Thread) Profiler Agent: Local accelerated session

13:19:15,984 WARN  [org.jboss.as.ejb3.timer] (EJB default - …
Run Code Online (Sandbox Code Playgroud)

java profiling visualvm wildfly wildfly-10

4
推荐指数
1
解决办法
1845
查看次数

使用 VisualVm 分析堆转储时出现内存不足错误

当使用 VisualVm 的堆转储时,有一个选项可以查看特定类的所有实例,但是当实例太多时,我收到此错误:

\n\n

堆 walker\xef\xbc\x9a\n 内存不足\n要避免此错误\xef\xbc\x8c,请增加 NetBeans IDE 安装目录中的 etc/netbeans.conf 文件中的 -Xmx 值。

\n\n

但该错误应该与 netbeans.conf 无关,它应该类似于 VisualVM.conf 文件。而且我的jdk里也没有找到配置文件。那么我该如何解决这个错误呢?

\n

jvm visualvm jvisualvm

4
推荐指数
1
解决办法
4120
查看次数

将 VisualVM 与 AdoptOpenJDK 和 OpenJ9 结合使用

如果我使用适用于 Java8 的 AdoptOpenJDK HotSpot 构建,我可以使用 VisualVM 监控应用程序。如果我使用 OpenJ9 版本,VisualVM 会显示错误“无法检测到本地应用程序”。

有没有人让 VisualVM 与 OpenJ9 一起工作?

visualvm openj9 adoptopenjdk

4
推荐指数
1
解决办法
4010
查看次数