如何启用执行器中的所有端点(Spring Boot 2.0.0 RC1)

时间:2018-02-21 08:10:28

标签: java spring spring-boot spring-boot-actuator

我从1.5.10移动到Spring Boot 2.0.0 RC1,我在最新版本中遇到了执行器。如何启用曝光并启用所有执行器端点?

唯一暴露的端点是:

{
  "_links": {
    "self": {
      "href": "http://127.0.0.1:8080/actuator",
      "templated": false
    },
    "health": {
      "href": "http://127.0.0.1:8080/actuator/health",
      "templated": false
    },
    "info": {
      "href": "http://127.0.0.1:8080/actuator/info",
      "templated": false
    }
  }
}

这是我的application.properties个文件。有什么想法吗?

#The three first ones seem to be obsolete
endpoints.configprops.enabled=true
endpoints.beans.enabled=true
endpoints.shutdown.enabled=true

management.endpoints.enabled-by-default=true
management.endpoints.sensitive=false
management.endpoints.enabled=true

management.endpoint.configprops.enabled=true
management.endpoint.beans.enabled=true
management.endpoint.shutdown.enabled=true

management.endpoints.web.exposure.include=*

2 个答案:

答案 0 :(得分:60)

使用Spring Boot 2.0.0.RC1时,执行器端点必须1)启用并且2)暴露。

默认情况下,除shutdown之外的所有端点均已启用,并且仅显示healthinfo

在您的情况下,以下内容应该有效:

management.endpoints.web.expose=*
# if you'd like to expose shutdown:
# management.endpoint.shutdown.enabled=true

请注意,从Spring Boot 2.0.0.RC2开始,这再次发生了变化!

management.endpoints.web.exposure.include=*
# if you'd like to expose shutdown:
# management.endpoint.shutdown.enabled=true

有疑问,the dedicated migration guide始终与最新的更改保持同步。

修改

为了便于复制和粘贴,这里是`yaml'版本 - 从Spring Boot 2.0.0开始.RC2:

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

之前:

management:
  endpoints:
    web:
      expose: "*"

答案 1 :(得分:1)

我将补充一点,对于Spring Boot 2,执行器安全性已经改变(对于1.X,执行器的安全性具有单独的配置,当它与用户配置混合时经常导致问题)。对于Spring Boot 2.X,执行器没有单独的安全配置。根据Spring文档:

  

出于安全考虑,默认情况下禁用除/ health和/ info之外的所有执行器。 management.endpoints.web.expose标志可用于启用执行器。如果Spring Security位于类路径上且没有其他WebSecurityConfigurerAdapter存在,则执行程序由Spring Boot auto-config保护。如果您定义了自定义WebSecurityConfigurerAdapter,则Spring Boot auto-config将退出,您将完全控制执行器访问规则。)