Feign的高级配置

Feign的配置

从Spring Cloud Edgware开始,Feign支持使用属性自定义Feign。对于一个指定名称的Feign
Client(例如该Feign Client的名称为 feignName ),Feign支持如下配置项:

feignNameFeginClient的名称
connectTimeout : 建立链接的超时时长
readTimeout : 读取超时时长
loggerLevel: Fegin的日志级别
errorDecoder Feign的错误解码器
retryer : 配置重试
requestInterceptors : 添加请求拦截器
decode404 : 配置熔断不处理404异常 

请求压缩 

Spring Cloud Feign 支持对请求和响应进行GZIP压缩,以减少通信过程中的性能损耗。通过下面的参数
即可开启请求与响应的压缩功能:

 同时,我们也可以对请求的数据类型,以及触发压缩的大小下限进行设置:

 注:上面的数据类型、压缩大小下限均为默认值。

日志级别
在开发或者运行阶段往往希望看到Feign请求过程的日志记录,默认情况下Feign的日志是没有开启的。
要想用属性配置方式来达到日志效果,只需在 application.yml 中添加如下内容即可:

feign:
  client:
    config:
      service-product:
        readTimeout: 6000
        connectTimeout: 6000
        loggerLevel: FULL
  #配置feign日志的输出
  #日志配置  NONE : 不输出日志(高)   BASIC: 适用于生产环境追踪问题
  #HEADERS : 在BASIC的基础上,记录请求和响应头信息   FULL : 记录所有
logging:
  level:
    com.topcheer.order.feign.ProductFeignClient: debug

 NONE【性能最佳,适用于生产】:不记录任何日志(默认值)
BASIC【适用于生产环境追踪问题】:仅记录请求方法、URL、响应状态代码以及执行时间
HEADERS:记录BASIC级别的基础上,记录请求和响应的header
FULL【比较适用于开发及测试环境定位问题】:记录请求和响应的headerbody和元数据。 

posted @ 2020-02-06 17:30  天宇轩-王  阅读(1437)  评论(0编辑  收藏  举报