使用的是spring cloud中的配置中心来实现统一刷新,
1pom依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
<version>3.0.4</version>
</dependency>
监控+refresh配置
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
2注意点
springboot和spring-cloud版本相一致。他们版本间存在支持关系
springboot2.x以上,配置文件增加暴漏刷新接口
management:
endpoints:
web:
exposure:
include: refresh,loggers
3需要动态更新的配置类加@RefreshScope注解
4更改启动项目中的配置文件
手动执行刷新配置接口 post http://10.10.80.52:6071/vc/actuator/refresh 配置了RefreshScope的就会更新成功
代码实现了定时任务,5s自动刷新下上述接口,是否配置信息有变动
5、系统通过自定义拦截器动态更新配置
三个拦截器
#拦截器慢sql日志打印 ,单位(毫秒)
vbank:
slow-sql:
timeout: 10
#拦截器慢接口日志打印 ,单位(毫秒)
slow-interface:
timeout: 500
#拦截器redis日志打印 ,单位(毫秒)
slow-redis:
timeout: 10
动态支持日志级别更改
logging:
level:
com.worklite: info