- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
VisualVM/VisualGC 实时提供了大量有用的 GC 相关指标,但我想要一个命令行工具,可以通过 jstatd 连接到远程应用程序,并在 CSV 或 XML 中记录最好与 VisualGC 提供的指标完全相同的指标。自己写应该不成问题,但乍一看我找不到 VisualVM/jstatd 使用的协议(protocol)。
据我了解 VisualGC 不是开源的:https://stackoverflow.com/questions/11096466/where-is-the-source-code-repository-for-visualgc ,但是有其他开源工具吗?关于所使用的协议(protocol)有什么线索吗?
我设法通过 RMI 连接到 jstatd(默认端口 1099,JStatRemoteHost 是 rmi 名称),可以附加到特定 VM - 但 http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/sun/jvmstat/monitor/remote/RemoteVm.java#RemoteVm是 jstatd 的一个非常低级的接口(interface)。
我已经从https://svn.java.net/svn/visualvm~svn/trunk查看了VisualVM源代码刚刚开始查看 5mb 代码库,但它既不使用 RemoteHost 也不使用 RemoteVm RMI 类。
谢谢。
最佳答案
首先,我查看了 VisualVM 的源代码(~5mb),创建了一个命令行工具,在 JvmstatModelFactory 上注册 JvmstatModelProvider,获取应用程序,创建 JvmJvmstatModel 并提取所有 MonitoredValues - 它通过 jstatd 连接到远程应用程序,并以 timeMillis,name,value 格式打印更改的值1369270235646,sun.gc. Generation.2.space.0.capacity,167772161369270236666,sun.os.hrt.ticks,25115004911369270237581,sun.gc. Generation.0.space.0.used,6414081369270237582,sun.os.hrt.ticks,2512502544
一小时后,我找到了适合我的任务的命令行工具 https://code.google.com/p/hatter-source-code/wiki/hotstat ,它不使用 jstatd - 但没关系,我仍然可以通过 ssh 远程运行它。
关于java - jstatd/visualgc 的控制台客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16701283/
在连接 jstatd 和 visualvm 时遇到一点问题。以下是我的设置的分割: jstatd.policy grant codebase "file:/usr/java/jre1.7.0/lib/
我正在尝试 this link 中提到的所有步骤,但不幸的是遇到了同样的旧错误,例如 Could not create remote object access denied ("java.util.
我正在尝试在我们拥有的 Amazon EC2 linux 服务器上运行 jstatd: jstatd -J-Djava.security.policy=/usr/lib/jvm/java-6-open
我尝试在linux机器上运行jstatd jvm监控工具 jboss@hostAddr:/usr/java/jdk1.6.0_18/bin> uname -a Linux hostAddr 2.6.1
VisualVM/VisualGC 实时提供了大量有用的 GC 相关指标,但我想要一个命令行工具,可以通过 jstatd 连接到远程应用程序,并在 CSV 或 XML 中记录最好与 VisualGC
我正在尝试使用 jstatd 通过 jps 查询远程 JVM,以便最终使用 VisualVM 对其进行监控。 我让 jstatd 使用以下安全策略运行: grant codebase "file:${
我想在 linux 上授予我的 jstatd 权限 对应的手册是这样写的: To use this policy, copy the text into a file called jstatd.al
我正在尝试从我的工作站监控 VisualGC。 命令:java -version openjdk version "1.8.0_151" OpenJDK Runtime Environment (bu
我正在尝试通过 jstatd 监控服务器上运行的所有 Java 进程。我已经设置好了,可以连接 VisualVM 并查看所有正在运行的进程。大多数显示工作正常,但某些内容(尤其是 CPU 使用率和 M
我在远程服务器(Ubuntu 服务器 14.04)上启动了一个 jstatd: jstatd -J-Djava.security.policy=.jstatd.all.policy -J-Djava.
过去,我通过安全策略文件启动 jstatd,如下所示: https://stackoverflow.com/a/14930180/1294116 但是,在 Java 9+ 中,他们删除了 tools.
我想使用 jmx 或 jstatd 通过 ssh 隧道(到 EC2 机器)使用 visualvm 应用程序。我该怎么做呢?以下是已尝试(和失败)的列表:(顺便说一句:如果 visual vm 不合适,
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: VisualVM over ssh 我正在写这个问题并回答它,因为我今天花了几个小时让它工作,但我在这里找到
我是一名优秀的程序员,十分优秀!