微服务从配置中心获取配置,当远程仓库git的参数修改时,需要以post方式执行/actuator/refresh刷新配置。但是执行失败。报错404.
{
"timestamp": "2022-02-21T02:46:35.030+00:00",
"status": 404,
"error": "Not Found",
"message": "No message available",
"path": "/actuator/refresh"
}
查看springboot官网文档Spring Boot Reference Documentation
可以看到有
*
can be used to select all endpoints. For example, to expose everything over HTTP except the env
and beans
endpoints, use the following properties:
Properties
Yaml
management.endpoints.web.exposure.include=*
management.endpoints.web.exposure.exclude=env,beans
暴露http的所有endpoint可以使用
management.endpoints.web.exposure.include=*
把这个添加到配置文件中去,重启执行,结果不报错
[
"config.client.version",
"message"
]
这样就可以继续验证配置是否更新。
手动执行/actuator/refresh接口并不是很方便,尤其是微服务比较多的时候,可以考虑引入spring cloud bus,在配置中心引入spring cloud bus,刷新微服务改为刷新配置中心,这样只要刷新一次就能刷新所有微服务了。