前言:在上一章节中我们简单的介绍了如何去调节OprnFeign的连接超时时间,在OpenFeign的使用过程中可能需要对Feign接口的调用情况进行监控和输出,这时候就需要对OpenFeign进行日志增强处理,所以本节的内容即是关于OpenFeign的日志增强。
1、OpenFeign日志级别
(1)NONE:默认的,不显示任何日志
(2)BASIC:仅记录请求方法、URL、响应状态码及执行时间
(3)HEADERS:除了BASIC中定义的信息之外,还有请求和响应的头信息
(4)FULL:除了HEADERS中定义的信息之外,还有请求和响应的正文及元数据
2、新建一个config包,用于存放配置类
效果图:
3、配置日志Bean
(1)在config包里新建一个名为FeignConfig的类
效果图:
(2)编写FeignConfig类的内容
package com.ken.springcloud.config;
import feign.Logger;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class FeignConfig {
@Bean
Logger.Level feignLoggerLevel() {
//把OpenFeign的日志级别设置为FULL,即除了打印除了HEADERS中定义的信息之外,还有请求和响应的正文及元数据
return Logger.Level.FULL;
}
}
4、开启OpenFeign的日志功能
编辑application.yml文件的内容
server:
port: 80
eureka:
client:
#表示是否将自己注册进Eureka Server里,默认为true
register-with-eureka: false
service-url:
defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/
#设置feign客户端超时时间(OpenFeign默认支持ribbon)
ribbon:
#指的是建立连接所用的时间,适用于网络状况正常的情况下,两端连接所用的时间
ReadTimeout: 5000
#指的是建立连接后从服务器读取到可用资源所用的时间
ConnectTimeout: 5000
#开启OpenFeign日志打印功能
logging:
level:
#feign日志以什么级别监控哪个接口
com.ken.springcloud.service.PaymentFeignService: debug
5、测试日志打印功能
重新启动consumer服务,然后重新在浏览器输入http://localhost/consumer/payment/get/1 接口调用服务,最后我们查看consumer服务的日志,可以看到consumer服务输出了非常详细的关于Feign接口调用的日志