有没有一种方法可以将带有假装弹簧客户的身体记录下来?

时间:2019-08-20 12:57:52

标签: spring-boot feign openfeign

有没有一种方法可以记录下带有假装弹簧客户的尸体? 使用Log.level,我似乎只能在完整的日志记录中包含主体,在这种情况下,它也将打印标题。 我不想在日志中看到。

1 个答案:

答案 0 :(得分: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的所有实例将立即使用您的记录器。