使用SpringBoot Actuator监控应用示例

时间:2021-05-19

Actuator是Spring Boot提供的对应用系统的自省和监控的集成功能,可以对应用系统进行配置查看、相关功能统计等。

使用Actuator

引入依赖即可

Maven :

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

Gradle :

compile('org.springframework.boot:spring-boot-starter-actuator')

Endpoints

列举一些主要的endpoints

配置文件属性介绍

地址和端口的配置

  • management.port :指定访问这些监控方法的端口,与逻辑接口端口分离。如果不想将这些暴露在http中,可以设置 management.port = -1
  • management.address :指定地址,比如只能通过本机监控,可以设置 management.address = 127.0.0.1
  • 敏感信息访问限制

    根据上面表格,鉴权为 false 的,表示不敏感,可以随意访问,否则就是做了一些保护,不能随意访问。

    endpoints.mappings.sensitive=false

    这样需要对每一个都设置,比较麻烦。敏感方法默认是需要用户拥有 ACTUATOR 角色,因此,也可以设置关闭安全限制:

    management.security.enabled=false

    或者配合 Spring Security 做细粒度控制。

    自定义系统信息

    可以通过访问 /info 获取信息,需要在配置文件设置

    info: aaa: name: xxx email: xxx@qq.com bbb: age: 25 hobbies: running build: artifact: "@project.artifactId@" name: "@project.name@" version: "@project.version@"

    此时访问 localhost:8080/info 返回一下信息

    如果使用 maven ,可以访问pom.xml文件的信息,用法如下:

    // 获取pom.xml中project节点下artifactId属性 artifact: "@project.artifactId@"

    其他

    /shutdown这个需要post方式,通过请求来关闭应用。

    这个操作比较敏感,要想真正生效,需要以下配置:

    endpoints.shutdown.enabled: true

    我们可以通过实现HealthIndicator接口,编写自己的/health方法逻辑。也可以增加自定义监控方法。

    查看详细介绍,请移步官方文档

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

    声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章