Class HttpRequestResponseLogUtil


  • public class HttpRequestResponseLogUtil
    extends Object
    Utility for logging requests / responses.

    The utility can be used to generate HTTP request / response log strings. Both for incoming service calls as outgoing calls (i.e. calls to backend systems).

    Since:
    2.0.0
    Author:
    Rutger Lubbers
    • Constructor Detail

      • HttpRequestResponseLogUtil

        public HttpRequestResponseLogUtil()
    • Method Detail

      • getHeaders

        public org.springframework.http.HttpHeaders getHeaders​(javax.servlet.http.HttpServletRequest request)
        Create HttpHeaders for the request.
      • getHeaders

        public org.springframework.http.HttpHeaders getHeaders​(javax.servlet.http.HttpServletResponse response)
        Create HttpHeaders for the response.
      • createRequestLine

        public String createRequestLine​(String method,
                                        String request,
                                        String protocol)
        Create a request line for the requestUri and protocol.

        For example: GET /doc/test.html HTTP/1.1.

      • createLogString

        public String createLogString​(org.springframework.http.HttpHeaders headers,
                                      String body)
        Create a log string for the given headers and body with the platform's default charset.
      • createLogString

        public String createLogString​(String requestLine,
                                      org.springframework.http.HttpHeaders headers,
                                      byte[] body,
                                      String characterEncoding)
        Create a log string for the given requestLine, headers and body.
      • createLogString

        public String createLogString​(String requestLine,
                                      org.springframework.http.HttpHeaders headers,
                                      byte[] body,
                                      Charset charset)
        Create a log string for the given requestLine, headers and body.
      • createLogString

        public String createLogString​(javax.servlet.http.HttpServletRequest servletRequest,
                                      org.springframework.web.util.ContentCachingResponseWrapper response,
                                      org.springframework.http.HttpStatus httpStatus)
      • createLogString

        public String createLogString​(String requestLine,
                                      org.springframework.http.HttpHeaders headers,
                                      String body)
        Create a log string for the given requestLine, headers and body.
      • getRequestUri

        public String getRequestUri​(javax.servlet.http.HttpServletRequest servletRequest)
        Transform the request into a log line.
      • formatRequest

        public String formatRequest​(String method,
                                    String requestUri,
                                    org.springframework.http.HttpHeaders headers,
                                    byte[] body)
      • getResponseBody

        public String getResponseBody​(org.springframework.http.client.ClientHttpResponse response)
                               throws IOException
        Throws:
        IOException