问题标签 [jfr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
11031 浏览

java - Java 任务控制堆配置文件

我正在使用 Java 7u40 随附的Java Mission Control Profiler,但我无法对其进行配置文件和收集对象统计信息。无论我做什么,我都无法在 Memory -> Object Statistics窗口中看到任何统计信息。

以下命令启动收集:

Java Mission Control 文档没有提及启用对象分析的任何特定选项。我试图创建自己的个人资料并设置:

但仍然没有收集到对象统计信息。

0 投票
1 回答
1124 浏览

java - java飞行记录器连接错误

我正在使用 java 7 的飞行记录器来转储 Hadoop 任务的执行。为此,我使用此配置选项:

结果是许多 .jfr 文件(如预期的那样)。我可以毫无问题地在 Java Mission Control 中打开其中的任何一个。但是,如果我尝试使用以下方法将它们连接在一起:

(取自:http ://docs.oracle.com/cd/E15289_01/doc.40/e15070.pdf:http : //docs.oracle.com/cd/E15289_01/doc.40/e15070.pdf

我无法在 Java Mission Control 中打开结果,出现错误“从 condensed.jfr 加载事件时遇到问题。无法从 condensed.jfr 加载事件”。

我究竟做错了什么?

0 投票
2 回答
568 浏览

java - JMC maxage/maxsize 不起作用

根据JAVA cmd Reference,我可以设置 JFR 记录的 maxage 和/或 maxsize,但它不起作用。

我已经使用 ant 分享了 Intellij IDEA 录制和编译 scala:Stats

为了想法,我有以下设置:

-XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath=/home/ichaki/development/misc/stats/idea,maxage=1h,repository=/home/ichaki/development/杂项/统计/想法,设置=配置文件

对于蚂蚁:

-XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath=/home/ichaki/development/misc/stats/scala-ant,maxage=120s,maxsize=200k,repository=/home/ichaki/development /misc/stats/scala-ant,settings=profile

谢谢!

注意:我想在具有 SSD 的环境中收集统计信息,SSD 的大小非常有限

0 投票
1 回答
47 浏览

java - 如何拦截 FlightRecording 事件(java)?

有没有办法拦截 FlightRecorder 事件,以便在录制期间不仅将它们发送到 FlightRecording,而且还发送给另一个消费者。

谢谢!

0 投票
4 回答
3329 浏览

maven - 如何在 Maven 项目中为 Flight Recorder 添加启用标志?

我即将开始使用Java Mission Control 5.3.0

我已将-XX:+UnlockCommercialFeatures -XX:+FlightRecorder 添加到我的网络应用程序的 jetty.template 中。

然后我用mvn jetty:run启动网络应用程序。

但是当我启动飞行记录器时,我遇到了如下弹出问题。

而且我还尝试将如下标志添加到pom.xml中,但它不起作用。

我应该怎么做才能在我的网络应用上启用飞行记录器?

0 投票
1 回答
450 浏览

tomcat - Tomcat 的 Java Flight Recorder / Java Mission Control 自定义事件

Tomcat 是否有 Java Flight Recorder / Java Mission Control 自定义事件?

如果是这样,它们在哪里记录?

0 投票
1 回答
1151 浏览

java - 如何使用 Java Flight Recorder 避免截断堆栈跟踪

我正在使用 Oracle Java Flight Recorder收集 Java 应用程序的堆栈跟踪示例。这些堆栈跟踪使我最终能够生成CPU Flamegraph

我的问题是超过 64 帧的堆栈跟踪被 Java Flight Recorder 截断。在 Flamegraph 中很容易观察到,使用调试器我可以观察到 noFLRStackTrace超过 64FLRFrame秒,并且几乎所有 64 帧的堆栈跟踪都将其 TruncationState 设置为TRUNCATED

有谁知道这个 64 帧限制是否可以增加?如果堆栈跟踪不完整,火焰图将毫无用处。

0 投票
2 回答
4459 浏览

java - Java Flight Recorder 选项不起作用,文件仅在持续时间设置结束时存储

我有一个 Java 进程,并使用以下选项启动它(如此处建议:FR的参数):

-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:StartFlightRecording=duration=2m,filename=myflightrecord.jfr -XX:FlightRecorderOptions=maxsize=100k,maxage=1m

为了获得飞行记录器信息。

我希望maxage=1m只会给我一分钟的记录,而maxsize=100k文件大小不会大于 100Kb,但它们都没有按预期工作。

我遇到的另一个问题是我希望每隔一段时间存储一次文件,假设每分钟一次。但是文件“ myflightrecord.jfr ”是空的,直到达到持续时间(示例中为 2 分钟)。

有没有办法让飞行记录器在持续时间结束之前刷新?

ps:我使用的Java版本是JDK1.8.0_45

0 投票
1 回答
255 浏览

weblogic - Weblogic 转储 JFR 而不丢弃旧的

我正在使用 weblogic 服务器,并试图为我的 Weblogic 服务器获取 JFR。我使用的命令行参数是:

这里有2个缺点:

1) 最多存储 3 个 JFR,之前的数据丢失。

2) 当出现 OOM 时,我执行脚本以使用信号 11 (SIGSEGV) 终止服务器。这不会转储当前记录的 JFR。

如何在崩溃时获取数据并保留所有 JFR 数据?空间在这里不是问题。如果我指定 maxage=0,则永远不会转储 JFR。如果我指定 maxsize,一旦达到限制,文件就会被删除。

0 投票
1 回答
175 浏览

java - FlightRecorder 是否在 JavaSE 8 Embedded 8 compact2 配置文件上运行?

我在嵌入式平台(如 Rasp Pi)上使用 JavaSE Embedded 8 compact 2 配置文件。我选择紧凑型 2 配置文件以使占用空间尽可能小。

出于开发目的,我想进行分析,而不是在运行时更改配置文件(作为闪存中操作系统的一部分)。JavaSE Embedded 8 确实包含用于分析目的的飞行记录器,这是一个非常酷且有用的工具。但是:它需要 FullJRE 配置文件。

Oracle 的页面http://www.oracle.com/technetwork/java/embedded/resources/tech/java-flight-rec-on-java-se-emb-8-2158734.html指出:

是否有技术机会在紧凑型 2 配置文件上工作?例如,通过创建包含飞行记录器插件的定制版 JVM?或者是否需要仅在 FullJRE VM 中的本机组件?

更新:与此同时,我发现了 Jim Connor 的一篇帖子,其中包含关于精简配置文件的声明。请参阅https://blogs.oracle.com/jtc/entry/using_java_fligt_recorder_with。Jim 详细描述了如何在 compact 3 配置文件上运行飞行记录器。由于飞行记录器依赖于 javax.management,他认为在紧凑的 1/2 配置文件上运行无法进行实质性更改。