我正在使用以下配置来启用使用伪装进行的API调用的记录
#Feign properties
feign:
client:
config:
default:
loggerLevel: full
我的应用程序正在调用3个API,伪装正在正确记录所有3个API的请求和响应JSON。我想禁用其中一种API的日志记录。能否请您告知必要的配置。提前感谢
如果您有3个API的3个不同的伪装客户端,那么您可以以这种方式简单地覆盖日志记录级别(假设您的伪装客户端称为“ feignClient2”:]]
#Feign properties feign: client: config: default: loggerLevel: full feignClient2: loggerLevel: none
但是如果您有3个端点的伪装客户端,则任务将变得更加复杂。您可以继承feign logger类(如果现在使用它,可以继承其任何子类,例如fe Slf4jLogger),并覆盖其
logRequest
和logAndRebufferResponse
方法以不记录特定端点的任何内容(您可以获得所需的信息)信息分别来自request
和response
方法参数)。然后使用您自己的记录器添加FeignLoggerFactory
bean:
@Bean public FeignLoggerFactory feignLoggerFactory() { return new DefaultFeignLoggerFactory(new CustomLogger()); }
将从
FeignLoggerFactory
中覆盖默认的FeignClientsConfiguration。
总之,我建议您使用第一个选项(对于单独的伪装客户端)。但是,如果您选择第二个代码,请提供示例代码,我可以帮助您。