hawtio已经适配了Spring Boot 2,并且Actuator可以在Web控制台上使用

首先

hawtio提供了一个可以监控Java应用程序的Web控制台。
在2018年11月发布的hawtio 2.3.0版本中,根据变更日志,已经适应了Spring Boot 2。
※之前已经支持Spring Boot 1.x版本。

image.png

由于准备了适用于Spring Boot 2的示例应用程序,因此我将记下运行时的笔记。

Spring Boot 2适配.

通过支持Spring Boot 2,可以做些什么?

在Spring Boot中,有一个名为Spring Boot Actuator的功能,使用它可以添加用于查看系统状态和指标的端点。访问Actuator的端点可以获取JSON格式的信息。
在hawtio中,可以将从Actuator端点获取的信息显示和操作在Web控制台中。

但是,并非所有Actuator的端点都被支持,只有以下三个端点被支持。

/health
用于检查应用程序状态的应用。可以获取应用程序的启动时间、磁盘使用量等信息。

可以获取HTTP请求的信息。

/loggers
可以显示记录器设置并更改日志级别。

我要尝试使用Spring Boot 2创建一个示例应用程序。

以下是关于示例应用程序的说明。

Hawtio Spring Boot 2 示例

首先,复制hawtio 2.3.0的存储库。

git clone -b hawtio-2.3.0 https://github.com/hawtio/hawtio

执行应用程序。

cd hawtio\examples\springboot
mvn spring-boot:run

请确保已经设置了JAVA_HOME并且安装了mvn,并将其添加到了系统路径中。

如果要创建并执行war文件,请按以下方式执行。

mvn clean package
cd target
java -Dhawtio.authenticationEnabled=false hawtio-example-springboot-2.3.0.war

样例应用程序使用Apache Camel框架,如下在屏幕上显示”Hello World!”。

image.png

此外,当您访问以下URL时,浏览器会显示”Hello World!”。

image.png

查看hawtio的Web控制台。

立即访问hawtio的Web控制台。
由于示例应用程序没有进行身份验证,因此只需访问以下网址即可立即使用。

展示的屏幕如下所示,菜单中显示了Spring Boot。除此之外,还有使用Apache Camel的示例应用程序,因此菜单中还显示了Camel、hawtio的默认插件JMX等内容。注意:示例应用程序中还有示例插件,但该插件未显示在菜单中。原因不明。

image.png

选择Spring Boot选项后,将显示以下屏幕。将显示适应Actuator的health、loggers和trace端点的三个选项卡。

Health选项卡如下所示。

image.png

在Loggers标签页中,显示如下。

image.png

Trace选项卡的显示如下。

image.png

确认示例程序

由于篇幅较长,我省略了部分内容,但以下两点是重点。

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>

    <!-- hawtio -->
    <dependency>
      <groupId>io.hawt</groupId>
      <artifactId>hawtio-springboot</artifactId>
    </dependency>

应用程序属性的关键是以下两行:
– management.endpoints.web.exposure.include=hawtio,jolokia
– hawtio.authenticationEnabled=false

在「management.endpoints.web.exposure.include」中添加hawtio和jolokia为端点,并通过「hawtio.authenticationEnabled=false」将hawtio的认证关闭。

server.port=10000
management.server.port=10001

management.endpoints.web.exposure.include=hawtio,jolokia

logging.level.io.hawt=INFO
logging.level.org.springframework=WARN
logging.level.io.undertow=WARN

camel.springboot.name=SampleCamel
timer.period=10000
hawtio.authenticationEnabled=false

最后

Spring Boot有一个称为Spring Boot Admin的Web控制台,它的功能范围部分重叠,并可能与hawtio进行比较。

在服务器/客户端层面,Spring Boot Admin 是一个解决方案,而 hawtio 是可以立即集成到 Spring Boot 应用程序中使用的优点。虽然我没有在生产环境中使用过这两个工具,但在开发环境中使用 hawtio 看起来更加方便。
此外,hawtio 还具有 Apache Camel、ActiveMQ 和 JMX 等标准插件,所以如果要使用这些插件,hawtio 似乎更好。

请提供更多的上下文来让我能够准确地将句子翻译成中文。

    • Hawtio Spring Boot 2 Example

 

    Hawtio with Spring Boot
bannerAds