@ -263,17 +263,7 @@ public abstract class AbstractErrorWebExceptionHandler implements ErrorWebExcept
@@ -263,17 +263,7 @@ public abstract class AbstractErrorWebExceptionHandler implements ErrorWebExcept
. flatMap ( ( response ) - > write ( exchange , response ) ) ;
}
private boolean isDisconnectedClientError ( Throwable ex ) {
return DISCONNECTED_CLIENT_EXCEPTIONS . contains ( ex . getClass ( ) . getSimpleName ( ) )
| | isDisconnectedClientErrorMessage ( NestedExceptionUtils . getMostSpecificCause ( ex ) . getMessage ( ) ) ;
}
private boolean isDisconnectedClientErrorMessage ( String message ) {
message = ( message ! = null ) ? message . toLowerCase ( ) : "" ;
return ( message . contains ( "broken pipe" ) | | message . contains ( "connection reset by peer" ) ) ;
}
private void logError ( ServerRequest request , ServerResponse response , Throwable throwable ) {
protected void logError ( ServerRequest request , ServerResponse response , Throwable throwable ) {
if ( logger . isDebugEnabled ( ) ) {
logger . debug ( request . exchange ( ) . getLogPrefix ( ) + formatError ( throwable , request ) ) ;
}
@ -284,6 +274,16 @@ public abstract class AbstractErrorWebExceptionHandler implements ErrorWebExcept
@@ -284,6 +274,16 @@ public abstract class AbstractErrorWebExceptionHandler implements ErrorWebExcept
}
}
private boolean isDisconnectedClientError ( Throwable ex ) {
return DISCONNECTED_CLIENT_EXCEPTIONS . contains ( ex . getClass ( ) . getSimpleName ( ) )
| | isDisconnectedClientErrorMessage ( NestedExceptionUtils . getMostSpecificCause ( ex ) . getMessage ( ) ) ;
}
private boolean isDisconnectedClientErrorMessage ( String message ) {
message = ( message ! = null ) ? message . toLowerCase ( ) : "" ;
return ( message . contains ( "broken pipe" ) | | message . contains ( "connection reset by peer" ) ) ;
}
private String formatError ( Throwable ex , ServerRequest request ) {
String reason = ex . getClass ( ) . getSimpleName ( ) + ": " + ex . getMessage ( ) ;
return "Resolved [" + reason + "] for HTTP " + request . methodName ( ) + " " + request . path ( ) ;