无法使弹簧启动执行器暴露默认端点以外的端点,需要建议

时间:2018-12-04 13:56:17

标签: java spring-boot properties-file spring-boot-actuator spring-micrometer

我有一个Spring Boot应用程序,打包为.war文件,并在wildfly实例上运行。

我最近将micrometeractuator依赖项添加到我的pom文件中:

    <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-registry-prometheus</artifactId>
    </dependency>

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

将应用程序部署到wildfly并启动并运行时,我可以访问默认端点/info/health,而在以下URL上没有任何问题:

  http://localhost:8080/myApp/info  
  http://localhost:8080/myApp/health

但是无论如何我都无法访问/actuator或任何其他端点。
我当前正在使用一个外部配置文件,该文件将自定义属性映射到我的应用程序中的Config类。该配置文件还包含未映射到config类的此类弹簧启动属性:

###################################################################
# Spring Boot properties
###################################################################
spring.http.multipart.max-file-size=500Mb
spring.http.multipart.max-request-size=500Mb
logging.level.org.springframework.web=DEBUG
logging.level.org.springframework.web.filter.CommonsRequestLoggingFilter=DEBUG
server.error.whitelabel.enabled=false  

Spring Boot可以毫无问题地拾取这些参数。
我还已将以下执行器属性添加到同一文件中:

###################################################################
# Actuator Properties
###################################################################
management.endpoints.web.exposure.include=*
management.endpoint.prometheus.enabled=true
management.endpoint.metrics.enabled=true
management.endpoint.status.enabled=true

management.endpoint.prometheus.show-details=always
management.endpoint.metrics.show-details=always
management.endpoint.status.show-details=always
management.endpoint.health.show-details=always

这些属性没有区别,我只能访问/info/health
我想念什么?

编辑:该应用程序当前没有安全模块。

1 个答案:

答案 0 :(得分:0)

如果您使用的Spring Boot版本低于2.0,请尝试使用禁用安全性 属性文件中的management.security.enabled = false