2.7. 连接到远程 Fuse 应用程序

Fuse 控制台使用 Jolokia,这是一种基于代理的 Java 管理扩展(JMX)的方法,要求在客户端上安装额外的软件(代理)。默认情况下,红帽 Fuse 包括一个 jolokia 代理。

使用独立 Fuse 控制台发行版本,您可以连接到已在其中运行的 jolokia 代理(https://jolokia.org/)的远程集成。如果您要连接的进程没有 jolokia 代理,请参阅 jolokia 文档(http://jolokia.org/agent.html)。

流程

Fuse Console 的代理 servlet 使用白名单主机保护,默认情况下,Fuse 控制台只能连接到 localhost。如果要将 Fuse 控制台连接到其他远程 Fuse 实例,您需要在 Spring Boot 应用程序的 main () 方法中配置 hawtio.proxyWhitelist 系统属性:

System.setProperty("hawtio.proxyWhitelist", "localhost, 127.0.0.1, myhost1, myhost2, myhost3");

2.7.1. 连接到远程 Jolokia 代理

开始之前,您需要知道远程 Jolokia 代理的连接详情(主机名、端口和路径)。

Spring Boot 上 Jolokia 代理的默认连接 URL 是 http://<host>:8080/jolokia

作为系统管理员,您可以更改这个默认值。

通常,远程连接到 Jolokia 代理的 URL 是打开 Fuse Console 加 /jolokia 的 URL。例如,如果打开 Fuse 控制台的 URL 是 http://<host>:1234/hawtio,则远程连接的 URL 可能是 http://<host>:1234/hawtio/jolokia

要连接到远程 Jolokia 实例,以便您可以检查其 JVM:

  1. Connect 选项卡。
  2. 单击 Remote 选项卡,然后单击 Add connection
  3. 键入 名称Scheme (HTTP 或 HTTPS) 和主机名
  4. 单击 Test Connection
  5. 点击 Add
注意

Fuse 控制台会自动探测 localhost 和 127.0.0.1 以外的本地网络接口,并将它们添加到白名单中。因此,您不需要手动将本地机器的地址注册到白名单中。

2.7.2. 设置数据移动首选项

您可以更改以下 Jolokia 首选项,例如,如果要更频繁地刷新 Fuse Console 中显示的数据。请注意,增加数据更新的频率会影响网络流量,并增加对服务器的请求数。

  • 更新率 - 轮询到 Jolokia 以获取 JMX 数据之间的周期(默认为 5 秒)。
  • 最大深度 - Jolokia 将在返回前将对象放入 JSON 的级别数(默认为 7)。
  • 最大集合大小 - 响应中 Jolokia marshals marshals 的最大元素数(默认值为 50,000)。

更改这些设置的值:

  1. 在 Fuse 控制台右上角,单击用户图标,然后单击 Preferences

    mf preferences

  2. 编辑选项,然后单击 Close

2.7.3. 查看 JVM 运行时信息

要查看 JVM 运行时信息,如系统属性、指标和线程,请单击 Runtime 选项卡。