OpenFenign
日志
日志级别分为4种
- NONE :不记录人任何日志(默认值)【性能最佳,适用于生产】
- BASIC :记录请求方法、请求URL、状态码和响应时间 【适用于生产环境追踪问题】
- HEADERS :在BASIC级别的基础上,记录请求和响应的头信息
- FULL :在HEADERS级别的基础上,记录请求和响应的正文及元数据。
# application.yml
logging:
level: #debug 这里设置将会是所有的日志都将是debug
com.xxx.order.feigen: debug
局部接口日志
/**
全局配置:当使用@Configuration 会将配置作用所有的服务提供方
局部配置:如果指向针对某一个服务进项配置,就不要加@Configuration
*/
@Configuration
public class FenignConfig{
@Bean
public Logger.Level feignLoggerLevel{
// 枚举
return Logger.Level.FULL
}
}
feign:
client:
config:
order-service: # 服务名
LoggerLevel: BASIC
在@FenignClient中配置如下
@FenignClient(configuration=FeignConfig.class)
设置超时时间
- 全局配置
@Configuration
public class FenignConfig{
@Bean
public Request.Options options{
return Request.Options(5000,10000)
}
}
- yml 配置
feign:
client:
config:
order-service: # 服务名
# 连接超时时间 默认2秒
connectTimeout: 5000
# 请求处理超时时间 默认5秒
readTimeout: 10000
契约配置
主要是为了向下兼容1.x 版本
- 全局配置
@Configuration
public class FenignConfig{
@Bean
public Contract feignContract{
return new Contract.Default();
}
}
- yml 配置
feign:
client:
config:
order-service: # 服务名
contract: feign.Contract.Default