Feign自定义配置应用

Feign自定义配置应用

  1. 环境
    nacos: 1.3.1

启动nacos

cd /usr/local/nacos/bin

sh startup.sh -m standalone

2.自定义Feign的配置
1)添加依赖

加入nacos-discovery发现服务的依赖、web、actuator用于监控检查,添加openfeign依赖才能使用Feign功能

在这里插入图片描述

2)修改配置文件

配置nacos注册中心地址,因为不提供服务,所以不需要再注册中心注册因此register-enabled=false

在这里插入图片描述

3)添加Feign支持

启动类中加入注解@EnableDiscoveryClient(用于支持nacos注册中心)、@EnableFeignClients(用于支持Feign),

配置FeignConfiguration类文件

Spring Cloud Netflix默认的SpringMvcController将替换为feign.Contract.Default

用feign.Contract.Default将契约改为Feign原生的默认契约,就可以使用feign自带的注解了

在这里插入图片描述

4)自定义Feign接口

  • Feign接口文件需和启动类再同一包目录下,使用@FeignClient注解配置所需要调用服务,此处nacos-provider是需要在注册中心提供服务

因为上面配置了feign.Contract.Deafault,所以在接口中可以使用Feign原生的注解@RequestLine

在这里插入图片描述

添加HelloController类文件

此处使用接口MyFeignClient调用hello方法获取到nacos-provider客户端提供的服务
在这里插入图片描述

3.Feign中记录日志
1)添加配置项

在配置文件中添加记录日志的包,* 而每个FeignClient都需要单独配置,它只能响应debug级别的日志
在这里插入图片描述

2)设置日志等级

在FeignConfiguration类文件中配置日志等级

在这里插入图片描述

日志等级:

NONE:不记录(默认)
BASIC:只记录请求方法、URL、响应状态码和执行时间
HEADERS:记录基本信息,请求和响应标题
FULL: 记录请求和响应标题、正文和行数据
4.测试Feign自定义的配置
启动nacos-provider、feign-config客户端,进入nacos查询nacos-provider服务是否注册
在这里插入图片描述

进入浏览器端键入地址http://localhost:2334/hello,就能访问到nacos-provider提供的服务内容

在这里插入图片描述

5.查看日志
控制台会输出如下信息
在这里插入图片描述

[MyFeignClient#hello] <— HTTP/1.1 200 (405ms)
2020-08-13 16:16:23.021 DEBUG 3680 — [nio-2334-exec-1] com.kk.feign.MyFeignClient : [MyFeignClient#hello] content-length: 16
2020-08-13 16:16:23.021 DEBUG 3680 — [nio-2334-exec-1] com.kk.feign.MyFeignClient : [MyFeignClient#hello] content-type: text/plain;charset=UTF-8
2020-08-13 16:16:23.021 DEBUG 3680 — [nio-2334-exec-1] com.kk.feign.MyFeignClient : [MyFeignClient#hello] date: Thu, 13 Aug 2020 08:16:23 GMT
2020-08-13 16:16:23.021 DEBUG 3680 — [nio-2334-exec-1] com.kk.feign.MyFeignClient : [MyFeignClient#hello]
2020-08-13 16:16:23.021 DEBUG 3680 — [nio-2334-exec-1] com.kk.feign.MyFeignClient : [MyFeignClient#hello] Hello Gateway A!
2020-08-13 16:16:23.021 DEBUG 3680 — [nio-2334-exec-1] com.kk.feign.MyFeignClient : [MyFeignClient#hello] <— END HTTP (16-byte body)

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值