From 75a41db071a4fb0a07bf95e4db48c8e93c9dd2d0 Mon Sep 17 00:00:00 2001 From: sdeleuze Date: Fri, 27 Apr 2018 10:32:56 +0200 Subject: [PATCH] Fine tune WebFlux server logging verbosity With this commit, WebFlux server uses warning instead of error log level for request handling, and also just print the message instead of the stacktrace which is mostly meaningless in reactive world. Complementary to this change, Reactor Netty removed additional logging as part of https://github.com/reactor/reactor-netty/issues/339. Issue: SPR-16688 --- .../http/server/reactive/ReactorHttpHandlerAdapter.java | 2 +- .../http/server/reactive/ServletHttpHandlerAdapter.java | 2 +- .../http/server/reactive/UndertowHttpHandlerAdapter.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/spring-web/src/main/java/org/springframework/http/server/reactive/ReactorHttpHandlerAdapter.java b/spring-web/src/main/java/org/springframework/http/server/reactive/ReactorHttpHandlerAdapter.java index b4c27f78b6..a53deaf2ff 100644 --- a/spring-web/src/main/java/org/springframework/http/server/reactive/ReactorHttpHandlerAdapter.java +++ b/spring-web/src/main/java/org/springframework/http/server/reactive/ReactorHttpHandlerAdapter.java @@ -73,7 +73,7 @@ public class ReactorHttpHandlerAdapter implements BiFunction logger.error("Handling completed with error", ex)) + .doOnError(ex -> logger.warn("Handling completed with error: " + ex.getMessage())) .doOnSuccess(aVoid -> logger.debug("Handling completed with success")); } diff --git a/spring-web/src/main/java/org/springframework/http/server/reactive/ServletHttpHandlerAdapter.java b/spring-web/src/main/java/org/springframework/http/server/reactive/ServletHttpHandlerAdapter.java index 0374dd38c5..8c81f62a11 100644 --- a/spring-web/src/main/java/org/springframework/http/server/reactive/ServletHttpHandlerAdapter.java +++ b/spring-web/src/main/java/org/springframework/http/server/reactive/ServletHttpHandlerAdapter.java @@ -279,7 +279,7 @@ public class ServletHttpHandlerAdapter implements Servlet { @Override public void onError(Throwable ex) { - logger.error("Handling completed with error", ex); + logger.warn("Handling completed with error: " + ex.getMessage()); runIfAsyncNotComplete(this.asyncContext, this.isCompleted, () -> { if (this.asyncContext.getResponse().isCommitted()) { logger.debug("Dispatching into container to raise error"); diff --git a/spring-web/src/main/java/org/springframework/http/server/reactive/UndertowHttpHandlerAdapter.java b/spring-web/src/main/java/org/springframework/http/server/reactive/UndertowHttpHandlerAdapter.java index dc5e1a3d18..e9ad7d90ed 100644 --- a/spring-web/src/main/java/org/springframework/http/server/reactive/UndertowHttpHandlerAdapter.java +++ b/spring-web/src/main/java/org/springframework/http/server/reactive/UndertowHttpHandlerAdapter.java @@ -97,7 +97,7 @@ public class UndertowHttpHandlerAdapter implements io.undertow.server.HttpHandle @Override public void onError(Throwable ex) { - logger.error("Handling completed with error", ex); + logger.warn("Handling completed with error: " + ex.getMessage()); if (this.exchange.isResponseStarted()) { try { logger.debug("Closing connection");