如何记录所有REST调用?

时间:2019-02-13 11:06:44

标签: java rest spring-boot logging jersey

在调试器中我可以看到

JerseyWebTarget { http://host.com/service/method }

,我看到它如何构建参数,然后执行service.method(parms)调用。 我可以以某种方式记录呼叫,以便获得完整的URL,例如

http://host.com/service/method?id=5

还有更复杂的参数,例如我要传输到服务的大JSON文件?

1 个答案:

答案 0 :(得分:0)

内置弹簧为此提供了一个过滤器。将下面的bean添加到配置文件中。

@Bean
public CommonsRequestLoggingFilter requestLoggingFilter() {
    CommonsRequestLoggingFilter loggingFilter = new CommonsRequestLoggingFilter();
    loggingFilter.setIncludeClientInfo(true);
    loggingFilter.setIncludeQueryString(true);
    loggingFilter.setIncludePayload(true);
    return loggingFilter;
}

将日志级别从org.springframework.web.filter.CommonsRequestLoggingFilter更改为DEBUG