当前位置: 首页 > 知识库问答 >
问题:

使用Eureka客户端和自定义上下文路径的Spring启动管理在运行状况上失败

许奇
2023-03-14

我已将我的spring boot应用程序monitor client配置为注册到Eureka。我有一个单独的spring boot admin(SBA)应用程序monitor,它监视注册到Eureka的所有应用程序。

如果我的应用程序中没有设置上下文路径,一切都很好。但是如果设置了上下文路径,SBA不再显示正确的信息。从留档来看,我似乎需要更新我已经完成的Eureka的元数据属性。

我的监视器应用程序配置如下:

application.properties:

spring.application.name=monitor-client
server.servlet.context-path=/monitor-client
server.port=9876

# Monitoring config
management.endpoints.web.exposure.include=*
eureka.instance.metadataMap.management.context-path=/monitor-client/actuator

我的应用程序显示为“脱机”,但我可以在“洞察”选项卡中浏览所有详细信息。我认为SBA正确地访问了致动器endpoint,但错误地使用了/健康endpoint,我不明白这是怎么可能的?

如果我进入SBA的管理界面,我注意到扳手endpoint和健康endpoint不一样:

  • 本地主机:9876/监控客户端/执行器(扳手)
  • 本地主机:9876/执行器/健康(健康)

我已经摆弄了一些设置,但在管理设置、执行器设置和eureka设置之间,我不确定该配置哪一个才能工作。

我试过:

    management.endpoints.web.base路径
  • eureka.instance.health检查URL路径

我目前正在使用spring boot 2.1.2。SBA的发布和匹配版本

共有1个答案

欧阳俊晖
2023-03-14

你能试试这些配置吗

server:
  servlet:
    context-path: /monitor-client

#management config
eureka:
  instance:
    health-check-url-path: /actuator/health
    metadata-map:
      management.context-path: /monitor-client/actuator
  client:
    serviceUrl:
      defaultZone: ${EUREKA_SERVICE_URL:http://localhost:8761}/eureka/

management:
  endpoint:
    health:
      show-details: always
  endpoints:
    web:
      base-path: /actuator
      exposure:
        include: "*"
 类似资料: