问题标签 [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.
java - Java Mission Control 空格是什么意思?
我想分析我的课程,它就像一个缓冲区,我保存用户数据并在之后获取它。我已经创建了 main 方法并在那里无限循环地运行测试方法。
msgSeqNum 是全局变量,我这样做是为了让 JVM 不删除我的调用(我认为它可以帮助我)。
我对它进行了 30 秒的分析,但正如我所见,我的代码运行了大约 40 次(我预计会有几千次)。我还看到了 JMC 中的空格(见截图),这表明我的 JVM 什么也没做。没有 GC、异常、外观、等待时间,我的代码运行速度非常快。
我尝试运行它几次,但我得到了相同的结果。为什么会这样?
操作系统 - 窗口
java - JMC Flight Recording是否强制Full GC?
我在 OSB 中实现的服务中遇到了一些与性能相关的问题(大部分时间都可以正常工作,并且不时会出现从 100 毫秒到 4/5 秒的响应时间峰值,没有明显的原因)。解释这种情况的假设之一是 JVM 可能在这些峰值期间执行 Full GC,我们正在使用任务控制监视 JVM。
管理员告诉我,jvm 正在使用 G1GC 禁用完整 gc 运行,我可以在启动命令中看到:
此外,当我分析 gc 日志时,没有执行 Full GC 的日志记录,我只能找到(根据这些配置,这很有意义):
但是,当我在 jmc 中打开飞行记录器并开始一些负载测试时,我立即注意到正在执行 Full GC
我可以在日志中看到它:
一旦我禁用飞行记录器,我就可以一遍又一遍地运行完全相同的负载测试,并且日志中不会记录 Full GC。
我在这里遗漏了什么,还是 Flight Recorder 真的强迫 JVM 执行 Full GC?
问候
java - 如何在 Java Mission Control 中分析异常?
在启用跟踪所有异常的情况下执行“飞行记录”时,我发现 JMC 存在不愉快的行为。
录制到面板后:
- 代码 -> 异常
- 事件->直方图->“事件类型”作为“Java应用程序/Java异常”和“分组依据”作为“类”
列出的不是所有抛出的异常,而是所有创建的异常(作为对象)。
有一种方式(或插件)可以在分析过程中生成抛出的异常列表?
问候
java - Java任务控制监听器?
我目前有一些想要分析的 Java 代码。在阅读了一些关于它的有前途的东西后,我决定使用 Java Mission Control。但是,到目前为止,我咨询过的每个资源都告诉我首先启动我想要分析的进程,然后才在任务控制已经运行后“附加”或分析代码(例如来自 oracle 的这个视频:https ://youtu.be/WMEpRUgp9Y4?t=14m56s)。
有没有办法从一开始就进行分析?谢谢
java - Java Flight Control - 保留最后 N 分钟记录数据
如果可以在连续记录下仅保留最后 N 分钟的数据,有人可以让我知道通过 Java Mission Control 启动的 Java Flight Control 吗?
我已经完成了这个讨论,但我无法找到我必须在哪里传递disk=true
参数。我一直在使用的选项如下所示。
环境:-
- 爪哇 8
- Mac OS X
- Java 任务控制 5.5.1 (M5.5.1-15, 172852)
activemq - 连续运行包装文件以使用 JFR 监控 ActiveMQ 性能
我有一个关于持续运行Java Flight Recorder以监控ActiveMQ的内存使用和其他性能统计信息的问题。
Wrapper 配置文件 ( wrapper.conf ) 位于此目录下,旁边有 ( wrapper , activemq, libwrapper.so) 文件;
../apache-activemq-5.12.1/bin/linux-x86-64/wrapper.conf
我添加了下面的行来运行 JFR;
/li>当我运行wrapper file时,预期的输出“myrecording.jfr”会在 wrapper.conf 中的指定路径下生成。但问题是,我也希望它自动发生(无需手动运行包装文件)。
可能的解决方案是什么?
java - 无法在 Windows10 上运行作为服务运行的 Java 应用程序的 Continuous Flight Recorder
我正在尝试分析一个 Java 应用程序,该应用程序使用 Java 飞行记录器dumponexit
选项在 Windows 10(64 位)中作为服务运行。在执行期间,Windows 确实会创建一个临时目录和临时 .jfr 文件。但是,最终的 JFR 文件不是在默认目录或用户定义的目录中创建的。使用的确切选项是-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true
.
这组选项在任何使用java -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true -jar <AppName>
.
在另一种情况下,如果我使用-XX:StartFlightRecording
具有定义持续时间的选项,则 Java Flight Recorder 会按预期在给定目录中创建文件。使用的确切选项是-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:StartFlightRecording=delay=20s,duration=60s,name=MyRecording,filename=C:\myrecording.jfr
我的要求说我需要使用前一个选项进行分析。也就是说,每当上述Windows服务启动时,就会启用分析,而每当服务停止时,分析就会停止并生成.jfr文件。
如果有人使用连续录制并解决了这个问题,那么该解决方案将不胜感激。
更新:设置日志级别以跟踪以下日志后生成。使用的选项:-XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true,dumponexitpath=C:\,loglevel=trace
java - 在 JMC 控制台中打开 jfr 文件时出错
尝试在 JMC 控制台中打开我的 60 MB jfr 文件时出现过大的录制错误。请帮助我。
谢谢