Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Restrict Payload for some method CommonsRequestLoggingFilter Spring

I am using CommonsRequestLoggingFilter to log payload of incoming request . But for one method i don't want to log the payload as it contains user confidential data . I have following configuration in web.xml

    <filter>
        <filter-name>LogFilter</filter-name>
        <filter-class>org.springframework.web.filter.CommonsRequestLoggingFilter</filter-class>
        <init-param>
            <param-name>includePayload</param-name>
            <param-value >true</param-value>
         </init-param>  
        <init-param>
            <param-name>includeQueryString</param-name>
            <param-value>true</param-value>
        </init-param>
          <init-param>
            <param-name>MaxPayloadLength</param-name>
            <param-value>10000</param-value>
        </init-param>
    </filter>

Help me in restricting with one method .

Thanks in advance

like image 718
Pratik Jaiswal Avatar asked Mar 17 '26 13:03

Pratik Jaiswal


1 Answers

You could create your own class extending CommonsRequestLoggingFilter and in that class you could do:-

@Override     
protected String createMessage(HttpServletRequest request, String prefix, String suffix) {
      //based on uri you could print payload or not.
}
like image 66
Jaspreet Jolly Avatar answered Mar 19 '26 03:03

Jaspreet Jolly