From e7ba2aee8ededae91cad2c22e0bb294b0fbc33e3 Mon Sep 17 00:00:00 2001 From: Luis Barrios Date: Wed, 11 Jan 2017 15:06:03 +0100 Subject: [PATCH] Add debug log traces to AutoFlushHandler --- .../io/moquette/server/netty/AutoFlushHandler.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/broker/src/main/java/io/moquette/server/netty/AutoFlushHandler.java b/broker/src/main/java/io/moquette/server/netty/AutoFlushHandler.java index 66cbcd9a..a802de09 100644 --- a/broker/src/main/java/io/moquette/server/netty/AutoFlushHandler.java +++ b/broker/src/main/java/io/moquette/server/netty/AutoFlushHandler.java @@ -19,6 +19,9 @@ import io.netty.channel.ChannelDuplexHandler; import io.netty.channel.ChannelHandlerContext; import io.netty.util.concurrent.EventExecutor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; @@ -30,6 +33,7 @@ import java.util.concurrent.TimeUnit; */ public class AutoFlushHandler extends ChannelDuplexHandler { + private static final Logger LOG = LoggerFactory.getLogger(AutoFlushHandler.class); private static final long MIN_TIMEOUT_NANOS = TimeUnit.MILLISECONDS.toNanos(1); private final long writerIdleTimeNanos; @@ -108,6 +112,9 @@ public class AutoFlushHandler extends ChannelDuplexHandler { private void initialize(ChannelHandlerContext ctx) { // Avoid the case where destroy() is called before scheduling timeouts. // See: https://github.com/netty/netty/issues/143 + if (LOG.isDebugEnabled()) { + LOG.debug("Initializing autoflush handler. MqttClientId = {}.", NettyUtils.clientID(ctx.channel())); + } switch (state) { case 1: case 2: @@ -141,6 +148,9 @@ public class AutoFlushHandler extends ChannelDuplexHandler { */ protected void channelIdle(ChannelHandlerContext ctx/*, IdleStateEvent evt*/) throws Exception { // ctx.fireUserEventTriggered(evt); + if (LOG.isDebugEnabled()) { + LOG.debug("Flushing idle Netty channel. MqttClientId = {}.", NettyUtils.clientID(ctx.channel())); + } ctx.channel().flush(); }