Java jconsole如何获得他需要的所有信息?

Java jconsole如何获得他需要的所有信息?,java,jvm,jvm-hotspot,Java,Jvm,Jvm Hotspot,我想制作一个系统来收集JVM的一些数据,并在某些级别通知我,jconsole有这些数据,但我不知道它是如何收集这些数据的。 有人知道用java编程收集这些数据的方法吗?如中所述,它“是一种符合java管理扩展(JMX)规范的监视工具”和“使用java虚拟机的广泛工具”来收集数据 换句话说,它使用 JMX提供了来自JVM中各种源的大量数据,新的数据源可以由库定义。这些都是使用发布的,它使用一组特定的def或注释来指示它们提供数据或操作、内容和方式 使用JMX2.0规范,您可以标记bean,从而非常

我想制作一个系统来收集JVM的一些数据,并在某些级别通知我,jconsole有这些数据,但我不知道它是如何收集这些数据的。 有人知道用java编程收集这些数据的方法吗?

如中所述,它“是一种符合java管理扩展(JMX)规范的监视工具”和“使用java虚拟机的广泛工具”来收集数据

换句话说,它使用

JMX提供了来自JVM中各种源的大量数据,新的数据源可以由库定义。这些都是使用发布的,它使用一组特定的def或注释来指示它们提供数据或操作、内容和方式

使用JMX2.0规范,您可以标记bean,从而非常容易地提供数据。根据您的容器,添加新bean。JMX既可以充当数据源,也可以允许从控制台或其他客户端调用方法,实际上允许您在被监视的VM上执行(支持的)操作

各种容器(例如)和库(例如)提供了额外的度量,此外还有。这些暴露了(更流行的一种)


JVM通过使用
域:键属性列表
公开这些bean。每个bean和属性都会公开一些相关信息,像JConsole这样的客户端可以使用这些信息来构建可用bean的树,以及每个带有计数器和按钮的屏幕。

有没有一本书介绍这些高级概念?