You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Spring Cloud Gateway本地暴露Actuator端点并保留fallback路由

解决Spring Cloud Gateway Reactive版本Actuator端点本地处理问题

针对你遇到的问题,只需调整Actuator路由的URI配置并保证路由顺序即可解决,无需修改前端代码。具体方案如下:

1. 修改网关路由配置

将Actuator路由的uri改为forward:/,并确保该路由在fallback路由之前配置(Spring Cloud Gateway按路由定义顺序匹配,先匹配的路由生效):

cloud:
  gateway:
    routes:
      # 其他路由定义...

      # Actuator本地处理路由
      - id: actuator
        uri: forward:/
        predicates:
        - Path=/actuator/**

      # Fallback路由:仅匹配未被前面路由捕获的请求
      - id: web-interface
        uri: lb://fallback
        predicates:
        - Path=/**

配置说明

  • forward:/ 会将请求直接转发到网关自身的Web处理链,不会再次触发路由转发逻辑,彻底避免无限循环。
  • 由于该路由优先级高于fallback的/**路由,所有/actuator/**路径的请求都会被优先拦截并由网关本地处理。

2. 确保Actuator端点正常暴露

在网关配置中开启Prometheus端点的暴露:

management:
  endpoints:
    web:
      exposure:
        include: prometheus
  endpoint:
    prometheus:
      enabled: true

方案原理

Reactive版本的Spring Cloud Gateway不会自动将/actuator/**解析为本地端点,而MVC版本默认做了这个处理。通过forward:/的配置,我们手动让Actuator请求跳过网关的路由转发流程,直接进入自身的端点处理逻辑,同时保留了原有的fallback路由规则,无需改动前端代码。

内容的提问来源于stack exchange,提问作者Ken Krueger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 19:46:02