Class DisconnectedClientHelper

java.lang.Object
org.springframework.web.util.DisconnectedClientHelper

public class DisconnectedClientHelper extends Object
Utility methods to assist with identifying and logging exceptions that indicate the client has gone away. Such exceptions fill logs with unnecessary stack traces. The utility methods help to log a single line message at DEBUG level, and a full stacktrace at TRACE level.
Since:
6.1
Author:
Rossen Stoyanchev
  • Constructor Details

    • DisconnectedClientHelper

      public DisconnectedClientHelper(String logCategory)
  • Method Details

    • checkAndLogClientDisconnectedException

      public boolean checkAndLogClientDisconnectedException(Throwable ex)
      Check via isClientDisconnectedException(java.lang.Throwable) if the exception indicates the remote client disconnected, and if so log a single line message when DEBUG is on, and a full stacktrace when TRACE is on for the configured logger.
    • isClientDisconnectedException

      public static boolean isClientDisconnectedException(Throwable ex)
      Whether the given exception indicates the client has gone away.

      Known cases covered:

      • ClientAbortException or EOFException for Tomcat
      • EofException for Jetty
      • IOException "Broken pipe" or "connection reset by peer"
      • SocketException "Connection reset"