学习spring cloud记录12-Feign常用自定义配置

前言

Feign被springboot自动装配,但是Feign也提供了可自定义修改配置,常用的修改是修改日志级别等,下面记录常用的配置。

知识

Feign常用自定义配置
类型作用说明
feign.Looger.Level修改日志级别包含不同的四种级别:NONE,BASIC,HEADERS,FULL
feign.codec.Decoder响应结果解析器HTTP远程调用的接口进行解析,列如解析json为对象
feign.codec.Encoder请求参数编码将请求参数编码,便于通过http请求发送
feign.Contract支持注解格式默认是SpringMVC注解
feign.Retryer失败重试机制请求失败后重试,默认不重试,但是底层依赖于ribbon,ribbon是有重试的

代码实现(修改级别)

方式一:基于配置文件

添加下列配置即可:

feign:
  client:
    config:
      default: #如果是default就是全局,如果是服务名,就是单独
        loogerLevel: FULL

方式二:基于java代码

声明一个类:

package priv.sinoam.demoorder.demo.config;

import feign.Logger;
import org.springframework.context.annotation.Bean;

public class FeignConfiguration {
    @Bean
    public Logger.Level logLevel(){
        return Logger.Level.BASIC;
    }
}

全局配置:

在启动类添加

@EnableFeignClients(defaultConfiguration = FeignConfiguration.class)

局部配置:

在客户端类添加

@FeignClient(value = "demo-user", configuration = FeignConfiguration.class)

Feign新能优化

Feign底层客户端的实现:

  • URLConnection:默认实现,不支持连接池
  • Apache HttpClient:支持连接池
  • OKHttp:支持连接池

Feign新能优化主要包括:

  • 使用连接池替代默认的URLConnection
  • 日志级别:最好使用basic或者none

实现

以HttpClient为例

引入依赖

        <dependency>
            <groupId>io.github.openfeign</groupId>
            <artifactId>feign-httpclient</artifactId>
        </dependency>

配置连接池

feign:
  httpclient:
    enabled: true # 支持httpClient 默认为true
    max-connections: 200 #最大连接数
    max-connections-per-route: 50 # 单个路径的最大连接数

问题

不管怎么配置,都没有打印日志,还没有找到解决办法

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值