我已经开始涉足 JFR + JMC 组合,坦率地说,它很棒(很棒的工作 Hirt & co)。
我想监控的一个指标是每个线程的 cpu 使用率,但我还没有确定它是否存储在任何地方。有 CPU% 的常用图表,但我希望看到类似的图表分解成单独的线程。
如果我使用 JMX 连接到正在运行的实例,则统计信息在线程选项卡下可用,但我无法为记录的 JFR 运行找到它。那是已经存在的东西还是我自己很容易实现的东西?
刚刚意识到您可以根据任意事件创建自己的自定义页面。
因此,从Event browser
选择 中thread cpu load
,右键单击事件名称并选择create a new page using the selected event types
and 在该页面中只需右键单击 and Show in bar chart -> User mode cpu load -> Average user mode CPU load
。然后右键单击图表和Group by -> Event thread
。
要获得更多要绘制的样本,您需要创建一个新的分析设置,将Thread CPU load
事件采样周期调整到任何有意义的值(例如 1s 或类似值)。