日常采坑之消息总线配置各种不生效


日常采坑之消息总线配置各种不生效

***@TOC

#日常采坑之消息总线配置各种不生效

你好,今天在学习微服务消息总线整合配置中心时,遇到了一些教学视屏中的坑,日常采坑。下面简单描述一下:在整合消息总线和configServer时,按照视屏和网上教程,将依赖加入,配置文件写好,但是,然后请求http://localhost:8762/actuator/bus-refresh.
发现一个熟悉的数字 404 。。。如下图在这里插入图片描述
于是开始排查,而重点是,同样的路径请求ConfigServer端,就可以正确执行。
问题就是如此,死活请求不通。
下面介绍解决过程:

查看配置是否正确

网上所说的配置也大致正确,我就不再详细介绍,大致带过。
首先是依赖:

  <!--configServer 集成 rabbitmq start-->
        <!--仪表盘监控依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>
   <!--configServer 集成 rabbitmq end-->

这两个依赖要加入你的ServerClient中,注意不要有依赖冲突。
之后就是配置文件bootstrap.yml中加入

spring:
#rabbitMQ的配置
  rabbitmq:
    host: localhost
    port: 5672
    username: guest
    password: guest
#actustor暴露的资源配置
management:
  endpoints:
    web:
      exposure:
        include: "bus-refresh"

注意,此处有坑
最后,在你需要更新的配置类上加注解@RefreshScope即可。
注意,上述配文件是在gitlab上,是通过configServer进行读取的,并不是直接写在你的项目中的配置文件中。
最后,尝试请求http://localhost:8762/actuator/bus-refresh.发现友好的404出现了。

查看情动日志,你会有新的发现

直接上日志:

2020-12-17 16:56:57.267  INFO [consumer-service,,,] 5580 --- [main] o.s.b.a.e.web.EndpointLinksResolver      : Exposing 0 endpoint(s) beneath base path '/actuator'

日志显示,暴露的actuator下的资源是0个,也就是说你的配置没有生效。那就注意细心检查一下你的配置是否有拼写错误等低级错误。如果没有,那就一定是这种情况了。

配置文件中坑!!!

这时相信你已经网上百度很多,但是大部分会和我上边讲的一样,但是,唯一不同的是,网上会极其粗暴地将全部资源暴露。即

#actustor暴露的资源配置
management:
  endpoints:
    web:
      exposure:
        include: "*"

以*适配所有资源路径。
然后有进行刷新请求,http://localhost:8762/actuator/bus-refresh.
ok,又一次404。。。
但是,这次你在看日志,就会发现,日志有变化

2020-12-17 17:07:14.571  INFO [consumer-service,,,] 11664 --- [main] o.s.b.a.e.web.EndpointLinksResolver      : Exposing 18 endpoint(s) beneath base path '/actuator'

可以发现暴露了18个资源路径。但是你依然请求到404.
到这里,至少证明我们的配置文件是没有问题的,我们离真相只差一步了。

真相!!!

到这里,足以证明暴露的服务是没有问题的,那么只有一种可能,使我们的路径请求不对,于是,你请求http://localhost:8762/actuator.发现了所有暴露资源的路径,碧昂且尝试找到你想要的/bus-refresh,但是你会发现,压根儿没有/bus-refresh,但是,有另一个似曾相识的路径,如图:

在这里插入图片描述
于是你终于发现了你想要的的真相:资源路径早已不是/bus-refresh,
而是/refresh。
于是你请求http://localhost:8762/actuator/refresh.
(注意请求方式:POST),发现你最喜欢的200。请求成功,资源也刷新了。

如果你已经愉快的解决了问题,不妨点个赞再走啊》》》》

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值