Feign客戶端的日誌

2021-10-09 17:57:16 字數 2386 閱讀 8259

一 介紹

很多場景下,需要了解feign處理請求的具體要求,處理feign遠端呼叫介面的日誌列印,那麼如何滿足這種需求呢?

feign對日誌的處理非常靈活,可為每個feign客戶端指定日誌記錄策略,每個feign客戶端都會建立乙個logger。預設情況下,logger的名稱是feigh介面的完整類名。需要注意的是,feign的日誌列印只會對debug級別做出響應。

我們可以為每個feign客戶端配置各種的logger.level物件,告訴feign記錄哪些日誌。logger.level的值有以下選擇。

none,無記錄(default)。

basic,只記錄請求方法和url以及響應狀態**和執行時間。

headers,記錄基本資訊以及請求和響應標頭。

full,記錄請求和響應的標頭檔案,正文和元資料。

二 新建專案myfeign-logging

三 編寫feign的配置類

package com.itmuch.cloud.config;

import org.springframework.context.annotation.bean;

import org.springframework.context.annotation.configuration;

import feign.logger;

@configuration

public class feignlogconfiguration

}

四 修改feign的介面,指定配置類

com.itmuch.cloud.study.user.feign.userfeignclient: debug # 將feign介面的日誌級別設定成debug,因為feign的logger.level只對debug作出響應。

#logging.level.org.springframework.cloud.consul=debug

#將feign介面的日誌設定為debug,針對於consul使用,這裡只是對userfeignclient操作,其實是可以這樣做的,記錄一下六 測試

1 啟動consul

2 啟動user微服務

3 啟動feign

4 訪問http://localhost:8010/user/1

宣告式HTTP客戶端 Feign

用feign重構之前的 之前的 1.不可讀 2 複雜的url難以維護 3.難以響應需求的變化,變化很沒有幸福感 4 程式設計體驗不統一 改造 org.springframework.cloud spring cloud starter openfeign 在啟動類上加上 enablefeigncli...

Feign宣告式客戶端介面

feign是netflix開發的宣告式 模板化的http客戶端,feign可以幫助我們更快捷 優雅地呼叫http api。在spring cloud中,使用feign非常簡單 建立乙個介面,並在介面上新增一些註解,就完成了。feign支援多種註解,例如feign自帶的註解或者jax rs註解等。sp...

客戶端負載均衡Feign之四 Feign配置

設定連線超時時間 ribbon.connecttimeout 500 設定讀取超時時間 ribbon.readtimeout 5000 對所有操作請求都進行重試 ribbon.oktoretryonalloperations true 切換例項的重試次數 ribbon.maxautoretriesn...