Oracle JDK使用记录

  • 本文关键字:记录 JDK Oracle java
  • 更新时间 :
  • 英文 :


JDK 13发行说明包括Oracle JDK和Oracle的OpenJDK之间的差异

它指出:

Usage Logging仅在Oracle JDK 中可用

什么是Usage Logging?为什么它只在Oracle JDK中可用?

它与Java Usage Tracker有关吗?

Java使用情况跟踪器是JRE的一项功能。当在计算机上启用时,Java使用情况跟踪器(JUT(会跟踪该计算机上应用程序和JRE的使用情况。高级管理控制台从使用情况跟踪器收集信息,并将其显示在报告中

因为它也在OpenJDK 中被引用

JDK-8037918Java Usage Tracker的系统范围配置状态:RESOLVED

这是指Java Usage Tracker。

Java Usage Tracker跟踪Java运行时环境(JRE(在系统中的使用情况。Java Usage Tracker的输出是一个纯文本、逗号分隔的记录,其中包含JRE版本、正在运行的应用程序和其他详细信息。该记录被附加到文件中,或在用户数据报协议(UDP(数据包中通过网络发送。

显然,用于捕获(?(和分析使用信息的推荐工具是Advanced Management Console。这是一个Oracle专有工具,不属于OpenJDK,但订阅Java Oracle的用户可以使用。

更多信息:

  • 高级管理控制台用户指南-4 Java用法
  • https://www.oracle.com/technetwork/java/javaseproducts/advanced-mgmt/advancedmanagementconsole-2254207.html

为什么它只在Oracle JDK中可用?

这是Oracle的业务决策。


它被OpenJDK Bug JDK-8037918 引用

这是实现该功能的原始请求。请注意,JDK-8037918没有给出实现该功能的OpenJDK代码库的版本。。。这是已解决问题的正常做法。

我的家用机器上有各种OpenJDK源代码树的副本(用于研究目的(。例如在OpenJDK 11树中;usagetracker";在一些构建文件中,但在源代码树中没有任何相关实现的跟踪(我可以找到(。

免责声明:我在Java平台集团为Oracle工作,但我在堆栈溢出问题上的答案是我自己的,而不是Oracle的官方答案

Java使用情况跟踪是Oracle JDK中的一项功能,但OpenJDK中还没有。

Oracle已经做了一些工作将代码转移到OpenJDK,但这还没有完成。当前的实现使用内部API和Oracle品牌的API,这些API在迁移之前需要转换为OpenJDK替代品。作为迁移工作的一部分,该功能被重新命名为";使用记录";这是对其作用的更准确描述。这就是为什么jira条目有时会提到";使用记录";而其它时间为"0";使用跟踪";。

Advanced Management Console是一个依靠使用情况日志记录/跟踪功能来创建Java运行时和使用它们的应用程序的维护和清单的解决方案。

最新更新