SpringCloud修改Feign日志記錄級別過程淺析
前言
本次示例代碼的文件結構如下圖所示。
1. 介紹
Feign 允許我們自定義配置,下面是 Feign 可以修改的配置。
類型 | 作用 | 說明 |
---|---|---|
feign.Logger.Level | 修改日志級別 | 包含四種不同級別:NONE、BASIC、HEADERS、FULL |
feign.codec.Decoder | 響應結果的解析器 | HTTP 遠程調用的結果做解析,例如解析 JSON 字符串反序列化成 Java 對象 |
feign.codec.Encoder | 請求參數(shù)編碼 | 將請求參數(shù)編碼,便于通過 HTTP 請求發(fā)送 |
feign.Contract | 支持的注解格式 | 默認是 Spring MVC 的注解 |
feign.Retryer | 失敗重試機制 | 請求失敗的重試機制,默認是沒有,不過會使用 Ribbon 的重試 |
- 一般我們需要配置日志級別。NONE 是不記錄,BASIC 只記錄基本的 HTTP 請求信息,HEADERS 除了基本的 HTTP 信息外,還記錄請求頭;而 FULL 則是記錄完整的 HTTP 信息。換句話說,按日志完整程度從小到大排序為:NONE < BASIC < HEADERS < FULL 。
- 實際開發(fā)中,推薦使用 BASIC 。因為記錄日志會消耗一定的性能。
2. 方式一
配置文件
1)全局生效 order-service
的配置文件。
feign:
client:
config:
default: # 全局生效,所有微服務生效
logger-level: FULL
重啟 OrderApplication
生效,當在 Postman 發(fā)送了一次查詢請求后, OrderApplication
的控制臺就出現(xiàn)了全部的 HTTP 日志信息。
2)局部生效
feign:
client:
config:
userservice: # 只在遠程調用userservice這個微服務時才生效
logger-level: FULL
3. 方式二
Java代碼
在 OrderApplication
中創(chuàng)建 Feign 配置類 config/DefaultFeignConfiguration.java
,聲明 Bean 。
public class DefaultFeignConfiguration { @Bean public Logger.Level loggerLevel() { return Level.BASIC; } }
該類沒有被 Spring 容器管理,因此不會生效。還需要進行下面的配置才能生效。
1)全局配置
在啟動類的 @EnableFeignClients
注解上添加參數(shù),指定 Feign 的配置類。
@EnableFeignClients(defaultConfiguration = DefaultFeignConfiguration.class)
2)局部配置
放到 Feign 客戶端接口的注解 @FeignClient
之中。
@FeignClient(value = "userservice", configuration = DefaultFeignConfiguration.class)
到此這篇關于SpringCloud修改Feign日志記錄級別過程淺析的文章就介紹到這了,更多相關SpringCloud修改Feign日志內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- SpringCloud Hystrix熔斷器使用方法介紹
- SpringCloud Gateway動態(tài)路由配置詳解
- Spring?Cloud?Gateway遠程命令執(zhí)行漏洞分析(CVE-2022-22947)
- SpringSecurit鹽值加密的密碼驗證以及強密碼驗證過程
- Spring?Cloud?Alibaba實現(xiàn)服務的無損下線功能(案例講解)
- springcloud-gateway集成knife4j的示例詳解
- SpringCloud?Alibaba環(huán)境集成之nacos詳解
- Spring?Cloud?Ribbon?負載均衡使用策略示例詳解
- SpringCloud @RefreshScope刷新機制深入探究
- SpringCloud?@RefreshScope刷新機制淺析
- SpringCloud啟動失敗問題匯總
- 一文吃透Spring?Cloud?gateway自定義錯誤處理Handler
- SpringCloud Gateway路由組件詳解
- SpringCloud OpenFeign基本介紹與實現(xiàn)示例
- Spring Cloud Gateway替代zuul作為API網關的方法
- SpringCloud使用Feign實現(xiàn)遠程調用流程詳細介紹
- SpringCloud開啟session共享并存儲到Redis的實現(xiàn)
- Spring?Cloud原理以及核心組件詳解
相關文章
java對list<Object>進行手動分頁實現(xiàn)
本文主要介紹了java對list<Object>進行手動分頁實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-07-07Java?Spring?boot日期和時間統(tǒng)一設置三種方法
時間和日期的統(tǒng)一設置在項目中經常是會遇到的,下面這篇文章主要給大家介紹了關于Java?Spring?boot日期和時間統(tǒng)一設置的三種方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-08-08HashMap紅黑樹入門(實現(xiàn)一個簡單的紅黑樹)
紅黑樹(Red Black Tree) 是一種自平衡二叉查找樹,是在計算機科學中用到的一種數(shù)據(jù)結構,典型的用途是實現(xiàn)關聯(lián)數(shù)組。 紅黑樹發(fā)明時被稱為平衡二叉B樹,后來修改為如今的“紅黑樹”2021-06-06mybatis多對多關聯(lián)實戰(zhàn)教程(推薦)
下面小編就為大家?guī)硪黄猰ybatis多對多關聯(lián)實戰(zhàn)教程(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10