How can I log RESTful post data?

前端 未结 3 1314
离开以前
离开以前 2020-12-31 09:18

We have REST services exposed via Spring MVC. We use a HandlerExceptionResolver to log exceptions. We currently log the following:

  • The exception
3条回答
  •  执笔经年
    2020-12-31 09:35

    Add this to the class representing the configuration for the application:

    import javax.servlet.Filter;
    import javax.servlet.http.HttpServletRequest;
    import org.springframework.web.filter.AbstractRequestLoggingFilter;
    

    ....

    @Bean
    public Filter loggingFilter(){
        AbstractRequestLoggingFilter f = new AbstractRequestLoggingFilter() {
    
            @Override
            protected void beforeRequest(HttpServletRequest request, String message) {
                System.out.println("beforeRequest: " +message);
            }
    
            @Override
            protected void afterRequest(HttpServletRequest request, String message) {
                System.out.println("afterRequest: " +message);
            }
        };
        f.setIncludeClientInfo(true);
        f.setIncludePayload(true);
        f.setIncludeQueryString(true);
    
        f.setBeforeMessagePrefix("BEFORE REQUEST  [");
        f.setAfterMessagePrefix("AFTER REQUEST    [");
        f.setAfterMessageSuffix("]\n");
        return f;
    }
    

    you may have to comment out

       f.setIncludePayload(true);
    

提交回复
热议问题