Fine-tune WebFlux logging at HTTP/WebSocket level
1. Use special category prefix "spring-web.reactivestreams" for logging of reactive streams signals in spring-web, since those are quite verbose would fill the logs at TRACE. 2. Add and use loggers in request and websocket session implementations separate from reactive streams bridge for regular TRACE logging. 3. Improve log messages and add where missing (e.g. for Reactor) Issue: SPR-16898
This commit is contained in:
@@ -64,17 +64,11 @@ public class WebSocketIntegrationTests extends AbstractWebSocketIntegrationTests
|
||||
Flux<String> input = Flux.range(1, count).map(index -> "msg-" + index);
|
||||
ReplayProcessor<Object> output = ReplayProcessor.create(count);
|
||||
|
||||
this.client.execute(getUrl("/echo"),
|
||||
session -> {
|
||||
logger.debug("Starting to send messages");
|
||||
return session
|
||||
.send(input.doOnNext(s -> logger.debug("outbound " + s)).map(session::textMessage))
|
||||
.thenMany(session.receive().take(count).map(WebSocketMessage::getPayloadAsText))
|
||||
.subscribeWith(output)
|
||||
.doOnNext(s -> logger.debug("inbound " + s))
|
||||
.then();
|
||||
})
|
||||
.doOnSuccessOrError((aVoid, ex) -> logger.debug("Done: " + (ex != null ? ex.getMessage() : "success")))
|
||||
this.client.execute(getUrl("/echo"), session -> session
|
||||
.send(input.map(session::textMessage))
|
||||
.thenMany(session.receive().take(count).map(WebSocketMessage::getPayloadAsText))
|
||||
.subscribeWith(output)
|
||||
.then())
|
||||
.block(TIMEOUT);
|
||||
|
||||
assertEquals(input.collectList().block(TIMEOUT), output.collectList().block(TIMEOUT));
|
||||
@@ -181,7 +175,7 @@ public class WebSocketIntegrationTests extends AbstractWebSocketIntegrationTests
|
||||
@Override
|
||||
public Mono<Void> handle(WebSocketSession session) {
|
||||
String protocol = session.getHandshakeInfo().getSubProtocol();
|
||||
WebSocketMessage message = session.textMessage(protocol);
|
||||
WebSocketMessage message = session.textMessage(protocol != null ? protocol : "none");
|
||||
return session.send(Mono.just(message));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,11 +9,6 @@
|
||||
<Logger name="org.springframework.core.codec" level="debug" />
|
||||
<Logger name="org.springframework.http" level="debug" />
|
||||
<Logger name="org.springframework.web" level="debug" />
|
||||
|
||||
<!-- temporarily while we resolve random failures -->
|
||||
<Logger name="org.springframework.web.reactive.socket.WebSocketIntegrationTests" level="debug" />
|
||||
<Logger name="org.springframework.web.reactive.socket.adapter" level="trace" />
|
||||
|
||||
<Logger name="reactor" level="info" />
|
||||
<Logger name="io.reactivex" level="info" />
|
||||
<Root level="info">
|
||||
|
||||
Reference in New Issue
Block a user