首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >spring管理服务器ui :指标和信息端点没有映射(返回404)

spring管理服务器ui :指标和信息端点没有映射(返回404)
EN

Stack Overflow用户
提问于 2018-01-12 08:28:26
回答 1查看 943关注 0票数 0

我有一个spring云服务,包含以下spring包版本

代码语言:javascript
运行
复制
<dependency>
            <!-- Import dependency management from Spring Boot -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>1.4.2.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>Brixton.SR4</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-server</artifactId>
            <version>1.3.7</version>
        </dependency>
        <dependency>
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-server-ui</artifactId>
            <version>1.3.7</version>
        </dependency>   

我让我的spring boot管理服务器ui在9003端口上运行。我正在使用eureka发现客户端将我的端点注册到注册表服务。

我的服务application.yml包含以下配置。

代码语言:javascript
运行
复制
server:
  context-path: /myservice
  port: 0

management:
  context-path: /mng
  security:
    enabled: false

eureka:
  instance:
    preferIpAddress: true   
    statusPageUrlPath: ${server.context-path:}${management.context-path:}/info
    healthCheckUrlPath: ${server.context-path:}${management.context-path:}/health
  client:
    serviceUrl:
      defaultZone: http://${EUREKA_DNS:localhost}:8761/eureka/

当我启动我的服务时,我可以看到关于我的api端点的以下日志

代码语言:javascript
运行
复制
2018-01-11 16:01:22.176  INFO 6070 --- [           main] o.s.b.a.e.mvc.EndpointHandlerMapping     : Mapped "{[/mng/health || /mng/health.json],produces=[application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.mvc.HealthMvcEndpoint.invoke(java.security.Principal)
2018-01-11 16:01:22.177  INFO 6070 --- [           main] o.s.b.a.e.mvc.EndpointHandlerMapping     : Mapped "{[/mng/info || /mng/info.json],methods=[GET],produces=[application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.mvc.EndpointMvcAdapter.invoke()
2018-01-11 16:01:22.177  INFO 6070 --- [           main] o.s.b.a.e.mvc.EndpointHandlerMapping     : Mapped "{[/mng/mappings || /mng/mappings.json],methods=[GET],produces=[application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.mvc.EndpointMvcAdapter.invoke()
2018-01-11 16:01:22.177  INFO 6070 --- [           main] o.s.b.a.e.mvc.EndpointHandlerMapping     : Mapped "{[/mng/metrics/{name:.*}],methods=[GET],produces=[application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.mvc.MetricsMvcEndpoint.value(java.lang.String)
2018-01-11 16:01:22.178  INFO 6070 --- [           main] o.s.b.a.e.mvc.EndpointHandlerMapping     : Mapped "{[/mng/metrics || /mng/metrics.json],methods=[GET],produces=[application/json]}" onto public java.lang.Object org.springframework.boot.actuate.endpoint.mvc.EndpointMvcAdapter.invoke()

当我启动我的仪表板时,将打印以下映射信息日志

代码语言:javascript
运行
复制
2018-01-11 22:04:00.886  INFO 55 --- [tp1976870338-18] o.s.c.n.zuul.web.ZuulHandlerMapping      : Mapped URL path [/api/applications/c5a746b1/health/**] onto handler of type [class org.springframework.cloud.netflix.zuul.web.ZuulController]
2018-01-11 22:04:00.886  INFO 55 --- [tp1976870338-18] o.s.c.n.zuul.web.ZuulHandlerMapping      : Mapped URL path [/api/applications/c5a746b1/env/**] onto handler of type [class org.springframework.cloud.netflix.zuul.web.ZuulController]
2018-01-11 22:04:00.886  INFO 55 --- [tp1976870338-18] o.s.c.n.zuul.web.ZuulHandlerMapping      : Mapped URL path [/api/applications/c5a746b1/metrics/**] onto handler of type [class org.springframework.cloud.netflix.zuul.web.ZuulController]

我现在的问题是,当我打开仪表板Ui时,它试图从"/api/applications/c5a746b1/ metrics“获取指标信息,但它返回404错误。但是在浏览器中,当我手动输入"/myservice/mng/ metrics“时,我可以看到指标信息。

我是纽比来的春云,感谢您的帮助。

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2018-01-27 02:47:21

您应该更新到1.4.x并将mangament.context-path条目添加到服务的元数据中。这样,SBA服务器就可以知道执行器端点的正确路径。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48217888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档