有没有办法用假装弹簧客户端只记录身体?使用 Log.level 我似乎只能包含带有完整日志记录的正文,在这种情况下,它也会打印标题。我不想在日志中看到。
问问题
307 次
1 回答
0
默认Logger
使用Log.Level
来控制记录的内容并以附加的方式工作。这意味着上升级别会记录更多信息。要自定义此行为,您需要提供自己的Logger
实现。具体来说,您可以扩展其中一个包含的记录器并自定义logAndRebufferResponse
方法:
public class MyLogger extends JavaLogger {
protected Response logAndRebufferResponse(String configKey,
Level logLevel,
Response response,
long elapsedTime) {
// only log the response data, skip the headers
}
}
接下来,将此记录器包含在您的 Feign 配置中。
API api = Feign.builder()
.logger(new MyLogger())
.logLevel(Logger.Level.FULL)
.target(API.class, "https://api.example.com");
这个 Feign Client 的所有实例现在都将使用你的 logger。
于 2019-08-21T14:25:27.010 回答