栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring Boot Actuator 笔记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring Boot Actuator 笔记

Spring Boot Actuator: Production-ready Features

Spring Boot 包含许多额外的功能,以帮助你在生产环境中监控或管理你的应用程序。你可以选择使用 HTTP 端点或者 JMX 来管理和监控应用程序。审计,健康和指标收集会自动应用于你的程序。

1. Enabling Production-ready Features

模块 spring-boot-actuator 提供了所有 Spring Boot 的生产特色。启用该功能的方式就是添加一个 spring-boot-starter-actuator 依赖:


    org.springframework.boot
    spring-boot-starter-actuator

2. Endpoints

Actuator 端点可以让你监控和与应用程序交互。Spring Boot 包含许多内置端点,并且允许你添加自己的端点。例如,health 端点提供基本的应用健康信息。

 

2.1. Enabling Endpoints

默认地,除了 shutdown 端点之外,其他所有端点都是启用的(不一定暴露)。如果要配置,使用 management.endpoint..enabled 属性:

management.endpoint.shutdown.enabled=true

 
如果你希望选择性的启用端点,可以使用如下配置:

// 默认关闭
management.endpoints.enabled-by-default=false
management.endpoint.info.enabled=true

禁用的端点将会完全从应用上下文中移除。如果仅仅更改端点曝光与否,使用 include 和 exclude 属性。

 

2.2. Exposing Endpoints

由于端点可能包含敏感信息,应该仔细考虑是否暴露。官网给出了内置端点的默认暴露。Web 环境下,只暴露了 info 和 health 端点。

exclude 优先级比 include 高。

如果需要在 Web 环境下暴露除了 env 和 beans 的端点,可以如下配置:

management.endpoints.web.exposure.include=*
management.endpoints.web.exposure.exclude=env,beans

yml 中 * 有特殊含义,因此需要用双引号包裹:

management:
  endpoints:
    web:
      exposure:
        include: "*"

 

2.8. Health Information

使用 health 信息来检查运行时应用的状态。通常,它被监控软件使用,来提醒我们何时生产系统宕机了。

health 端点依赖于 management.endpoint.health.show-details 和 management.endpoint.health.show-components 属性,它们可选值如下:

名称描述
never不展示细节
when-authorized只给认证用户展示细节。认证角色可以通过 management.endpoint.health.roles 配置
always给所有用户展示细节

默认是 never。当用户处于一个或多个端点角色时,被认为是授权的。如果端点没有配置角色(默认行为),则将认为所有认证的用户都被授权。角色可以通过 management.endpoint.health.roles 配置。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/351584.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号