电脑疑难杂症、电脑操作问题教程就来系统教程网

SpringCloud中集成OpenFeign时日志增强对Feign接口的调用情况进行监控和输出

2022-12-29 11:28 投稿人:网络编辑

场景

SpringCloud中集成OpenFeign实现服务调用:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/124822349

在上面实现使用OpenFeign进行服务调用之后。

如果要对接口调用的情况进行增强和输出要怎么弄。

Feign提供了日志打印功能,我们可以通过配置来调整日志级别,

从而了解Feign中Http请求的细节。

从而实现对Feign接口的调用情况进行监控和输出。

日志级别

NONE:默认的,不显示任何日志

BASIC:仅记录请求方法、URL、响应状态码及执行时间

HEADERS:除了BASIC中定义的信息外,还有请求和响应的头信息

FULL:除了HEADERS中定义的信息之外,还有请求和响应的正文及元数据

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

1、在服务消费者添加配置类FeignConfig,设置日志级别为FULL

package com.badao.springclouddemo.config;

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


@Configuration
public class FeignConfig
{
    @Bean
    Logger.Level feignLoggerLevel()
    {
        return Logger.Level.FULL;
    }
}

re>

2、编辑配置文件application.yml

配置日志以什么级别监听哪个接口

logging:
  level:
    # feign日志以什么级别监控哪个接口
    com.badao.springclouddemo.service.PaymentFeignService: debug

re>

完整pom文件

server:
  port: 88

eureka:
  client:
    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


logging:
  level:
    # feign日志以什么级别监控哪个接口
    com.badao.springclouddemo.service.PaymentFeignService: debug

re>

3、重启服务消费者并调用接口查看日志输出

相关文章