Java 任务控制代码分析器为空
Java Mission Control code profiler empty
当正在分析的应用程序将 XX:MaxJavaStackTraceDepth 系统 属性 设置为 -1 时,我在使用 Java Mission Control 时遇到问题。
重现:
- 启动 java 应用程序:java -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:MaxJavaStackTraceDepth=-1
- 使用默认设置为该应用制作飞行记录
- 查看生成的记录中的 "Code" 部分。它会是空的,像这样:http://imgur.com/if27cUu
系统:Ubuntu14.04/amd64。 Java1.8.0_72。
对于为什么会发生这种情况有什么建议吗?我想保持我的堆栈跟踪不受限制(由于一些罕见的堆栈溢出异常很难找到,除非你有堆栈跟踪的开头)。
编辑:
原题错怪java.endorsed.dirs系统属性。我有一堆属性组,一定是在淘汰的过程中弄糊涂了。
我已经能够重现 -XX:MaxJavaStackTraceDepth=-1 的问题,并且至少发现了一个相关错误 - https://bugs.openjdk.java.net/browse/JDK-7179701,这是一个目前针对 [=13= 的低优先级错误] 10....我的建议是改用 -XX:FlightRecorderOptions=stackdepth=2048。我也不能说我对这个选项做过很多试验,但至少它是为与 JFR 一起工作而设计的。
当正在分析的应用程序将 XX:MaxJavaStackTraceDepth 系统 属性 设置为 -1 时,我在使用 Java Mission Control 时遇到问题。
重现:
- 启动 java 应用程序:java -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:MaxJavaStackTraceDepth=-1
- 使用默认设置为该应用制作飞行记录
- 查看生成的记录中的 "Code" 部分。它会是空的,像这样:http://imgur.com/if27cUu
系统:Ubuntu14.04/amd64。 Java1.8.0_72。
对于为什么会发生这种情况有什么建议吗?我想保持我的堆栈跟踪不受限制(由于一些罕见的堆栈溢出异常很难找到,除非你有堆栈跟踪的开头)。
编辑: 原题错怪java.endorsed.dirs系统属性。我有一堆属性组,一定是在淘汰的过程中弄糊涂了。
我已经能够重现 -XX:MaxJavaStackTraceDepth=-1 的问题,并且至少发现了一个相关错误 - https://bugs.openjdk.java.net/browse/JDK-7179701,这是一个目前针对 [=13= 的低优先级错误] 10....我的建议是改用 -XX:FlightRecorderOptions=stackdepth=2048。我也不能说我对这个选项做过很多试验,但至少它是为与 JFR 一起工作而设计的。