首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在JDK 11中读取JFR

基础概念

JFR(Java Flight Recorder)是Java平台中的一个性能分析工具,用于收集有关Java应用程序的详细诊断和性能数据。JFR可以记录各种事件,如垃圾回收、线程活动、JVM内部操作等,帮助开发人员诊断性能问题和优化应用程序。

读取JFR文件

在JDK 11中,读取JFR文件需要使用jfr命令行工具。以下是读取JFR文件的基本步骤:

  1. 生成JFR文件: 在运行Java应用程序时,可以通过以下JVM参数启用JFR记录:
  2. 生成JFR文件: 在运行Java应用程序时,可以通过以下JVM参数启用JFR记录:
  3. 读取JFR文件: 使用jfr命令行工具读取生成的JFR文件:
  4. 读取JFR文件: 使用jfr命令行工具读取生成的JFR文件:

示例代码

以下是一个简单的示例,展示如何在JDK 11中启用和读取JFR文件:

启用JFR记录

假设你有一个Java应用程序,可以通过以下方式启用JFR记录:

代码语言:txt
复制
java -XX:StartFlightRecording=filename=myrecording.jfr MyApplication

读取JFR文件

使用jfr命令行工具读取生成的JFR文件:

代码语言:txt
复制
jfr summary myrecording.jfr

应用场景

JFR适用于以下场景:

  • 性能分析:分析和优化Java应用程序的性能。
  • 故障排查:诊断和解决Java应用程序中的性能问题和异常行为。
  • 监控:持续监控Java应用程序的性能指标。

常见问题及解决方法

问题1:无法生成JFR文件

原因:可能是由于JVM参数设置不正确或权限问题。

解决方法

  • 确保JVM参数正确设置,例如:
  • 确保JVM参数正确设置,例如:
  • 确保运行Java应用程序的用户具有写入文件的权限。

问题2:无法读取JFR文件

原因:可能是由于jfr工具未正确安装或版本不兼容。

解决方法

  • 确保jfr工具已正确安装,并且版本与JDK版本兼容。
  • 确保jfr命令行工具的路径已添加到系统的PATH环境变量中。

参考链接

通过以上步骤和示例代码,你应该能够在JDK 11中成功启用和读取JFR文件。如果遇到任何问题,请参考上述常见问题的解决方法进行排查。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

分布式系统性能调优: 一篇彻底搞定JMC定位JVM性能问题

开启 JFR 收集:  由于JFR是商用的,所以需要解锁Java程序的商业feature: -XX:+UnlockCommercialFeatures -XX:+FlightRecorder   --JDK...1.8u40之前版本,需再jvm启动前添加参数JDK 1.8u40之后版本,不需要在启动的时候通过flag来解锁了,可以动态的解锁jcmd 17206 VM.check_commercial_features...JFR采集策略 默认存储: /usr/local/jdk1.8.0_161/jre/lib/jfrdefault.jfc 默认配置-开销很低,适用于一直运行,不会影响Java程序的性能。....代码: 类加载、类卸载 信息 -重点关注 图片 图片 图片 图片 图片 图片 4.线程: 概览、热点线程、争用、等待时间、线程转储、锁定实例 图片 图片 图片 图片 图片 图片 5.I/O:  文件读取.../写入 、 套接字读取/写入  -定位 IO 瓶颈(文件+网络) -重点关注 图片 图片 图片 6.系统: 系统信息、 进程信息、环境变量信息  图片 图片 图片 7.事件: 按照事件维度展示 系统 发生

1.5K62
  • 比较 VisualVM、JMC 和异步分析器

    为了减轻这些风险,我目前正在研究 JDK 增强提案,该提案将官方 AsyncGetCallTrace 版本添加到 OpenJDK; async-profiler 的优点是它的许多特性(堆采样)、可嵌入性...JDK 飞行记录器 (JFR) JRockit 最初开发供内部使用的运行时分析器,但它也越来越受到应用程序开发人员的欢迎。...Oracle 最终使用 JDK11 开源了该工具,从那时起,OpenJDK 的 JVM 时间间隔分析工具就没有得到其他 JVM( OpenJ9)的支持。...\ arguments 或者使用 JDK 命令工具启动和停止它jcmd: $ jcmd PID JFR.start $ jcmd PID JFR.dump filename=file.jfr $...JFR 有一个 GUI,称为 JDK Mission Control,它允许您分析 JVM 并查看生成的 JFR 配置文件。

    61720

    开源 Java 性能分析器比较:VisualVM、JMC 和 async-profiler

    不同的开源分析器 目前,最著名的开源分析器有 3 个:VisualVM、async-profiler 和 JDK Flight Recorder(JFR)。...Async-profiler 的优势在于它的许多特性(堆采样)、可嵌入性、对其他 JVM( OpenJ9)的支持,以及它小巧的代码库,这使得它的适应性非常好。...JDK Flight Recorder(JFR) JRockit 最初开发运行时分析器是为了内部使用,但它也越来越受应用程序开发人员的欢迎。...\ arguments 或者使用 JDK 命令行工具jcmd 启动和禁用它: $ jcmd PID JFR.start $ jcmd PID JFR.dump filename=file.jfr...JFR 有一个名为 JDK 任务控制的 GUI,它让你可以分析 JVM 性能并查看生成的 JFR 性能分析概要。

    83710

    深度探索JFR - JFR详细介绍与生产问题定位落地 - 1. JFR说明与启动配置

    在 Oracle 收购 Sun 公司之后,Hotspot 虚拟机时代,也一直延续了这个工具: JFR 0.9 版本对应 JDK 7 和JDK 8:JDK 7u40 之后,实现了和 JRockit Flight...而且,在 JDK 8u40 之后,可以在运行时灵活地打开关闭 JFR。...JFR 1.0 版本对应 JDK 9 和 JDK 10: 在这一版本之后,增加了 JFR 事件接口,用户可以生产或者消费某种事件。...JFR 2.0 版本对应 JDK 11,这一版本就是我们今天要详细讨论说明。...Event本身带时间戳,那么可不可以在最后读取的时候进行排序?在一个线程内,生成的 Event 肯定是有序的;那么多线程产生的 Event, 就可以看成一个又一个的有序集合。

    2.2K21

    JDK19都出来了~是时候梳理清楚JDK的各个版本的特性了【JDK14特性讲解】

    这些工具最早是在BEA的JRockit JVM中出现的,最后被移植到了JDK。最开始JFR是商用版本,但是在JDK11的时候,JFR和JMC完全开源了,这意味着我们在非商用的情况下也可以使用了。   ...而在今天的JDK 14中,引入了一个新的JFR特性叫做JFR Event Streaming,我们将在本文中简要介绍。   先介绍一下JFR和JMC。...或者你可以配置JFR不写到磁盘中去,但是这样缓存中只会保存部分events的信息。这也是为什么会有JDK14 JEP 349的原因。   ...我们的思路就是使用jdk.jfr.consumer.RecordingFile去读取生成的JFR文件,然后对文件中的数据进行解析。...JFR事件流 讲了这么多,终于到我们今天要讲的内容了:JFR事件流。 上面的JFR事件中,我们需要去读取JFR文件,进行分析。

    1.3K30

    腾讯 JDK 正式开源,高性能、太牛逼啦!

    微服务场景 典型的微服务框架 Spring Cloud 、Dubbo 基于 Java 编程语言,通过使用腾讯 Kona 可以带来应用程序更快的启动速度和性能 。 2....本版本的CDS引自JDK12版本。 Kona提供可靠且低开销的线上剖析工具 Tencent Kona从Java11中引入JFR(Java Flight Recorder)框架,并集成入JVM中。...Kona支持JFR收集Java应用在运行过程中的诊断和性能数据,可实现性能问题的准确定位,提高用户线上的诊断能力。在默认情况下,JFR的性能损耗小于1%,在实现了极致的可靠性同时保证了低性能开销。...目前,JFR已集成入腾讯微服务平台 (Tencent Service Framework,TSF) 监控系统。...用户可通过监控实现JFR一键获取应用运行过程中Java/JVM等Profiling的数据。 ? 图片 Kona火焰图助力TSF实现性能问题的快速排查。

    1.1K30

    JDK 11 vs JDK 8:探索Java的新特性和改进

    在这篇文章中,我们将重点探讨JDK11相较于JDK 8所引入的一些新特性和改进,以便您能够更好地了解Java的最新发展。 1....Flight Recorder 和 Mission Control: JDK 11 集成了 Java Flight Recorder(JFR)和 JDK Mission Control 工具,这两个工具以前是企业版特性...JFR 是一种用于收集诊断和分析数据的工具,它对应用程序的性能影响非常小。Mission Control 则是用于监控、管理和分析 JFR 数据的桌面应用程序。 9....新的标准库 API: 引入了一些新的标准库 API, java.util.Optional 的额外方法、java.time 包中的新日期时间类、java.net.http 包中的新 HTTP 客户端...Java Shell(JShell): JDK 11 附带了一个名为 JShell 的新工具,它是一个用于执行 Java 代码的交互式环境,类似于其他语言的 REPL(读取-求值-输出-循环)工具。

    45710

    微服务云原生等场景,腾讯 Kona JDK 正式开源

    微服务场景 典型的微服务框架 Spring Cloud 、Dubbo 基于 Java 编程语言,通过使用腾讯 Kona 可以带来应用程序更快的启动速度和性能。...本版本的CDS引自JDK12版本。 Kona提供可靠且低开销的线上剖析工具 Tencent Kona从Java11中引入JFR(Java Flight Recorder)框架,并集成入JVM中。...Kona支持JFR收集Java应用在运行过程中的诊断和性能数据,可实现性能问题的准确定位,提高用户线上的诊断能力。在默认情况下,JFR的性能损耗小于1%,在实现了极致的可靠性同时保证了低性能开销。...目前,JFR已集成入腾讯微服务平台 (Tencent Service Framework,TSF) 监控系统。...用户可通过监控实现JFR一键获取应用运行过程中Java/JVM等Profiling的数据。 Kona火焰图助力TSF实现性能问题的快速排查。

    1.8K61

    jvm 性能调优工具之 jcmd

    概述 在JDK1.7以后,新增了一个命令行工具 jcmd。他是一个多功能的工具,可以用它来导出堆、查看Java进程、导出线程信息、执行GC、还可以进行采样分析(jmc 工具的飞行记录器)。...-f file:从文件file中读取命令,然后在目标Java进程上调用这些命令。在file中,每个命令必须写在单独的一行。以"#"开头的行会被忽略。...当所有行的命令被调用完毕后,或者读取到含有stop关键字的命令,将会终止对file的处理。 -l:查看所有的进程列表信息。 -h:查看帮助信息。...后,执行命令:jcmd PID JFR.dump name=abc,duration=120s filename=abc.jfr(注意,文件名必须为.jfr后缀) 检查JFR状态 执行命令:jcmd...进程的版本信息 C:\Users\jjs>jcmd 10576 VM.version 10576: Java HotSpot(TM) 64-Bit Server VM version 25.91-b15 JDK

    8.3K51

    华为开源内部OpenJDK定制版:“毕昇 JDK 8”

    近日华为在 openEuler 社区[1]开源了华为内部定制的的 OpenJDK 发行版,名为“毕昇 JDK 8[2](bishengjdk-8)”。 有点毕生都用 JDK8 的味道 ? 。...简介 README 文档中,华为开发者是这样介绍毕昇JDK的: 毕昇JDK是华为内部OpenJDK定制版Huawei JDK的开源版本,是一个高性能、可用于生产环境的OpenJDK发行版。...毕昇JDK 8与Java SE标准兼容,目前仅支持Linux/AArch64平台。毕昇JDK同时是OpenJDK的下游,现在和未来也会持续稳定为OpenJDK社区做出贡献。...支持特性 毕昇JDK已经升级至8u262版本,感谢OpenJDK社区众多开发者的贡献,现在毕昇JDK也已支持JFR,它是默认关闭的,用户可以使用以下命令在java应用启动的时候启用JFR,您还需要一个jmc...7.0以上的版本来读取jfr dump文件。

    1K31
    领券