>From Tomcat Embedded Core 9.0.26:

@Override
protected void doClose() {
    if (log.isDebugEnabled()) {
        log.debug("Calling [" + getEndpoint() + "].closeSocket([" +
this + "])", new Exception());
    }

Which will log something like:

DEBUG [http-nio-8080-exec-2]
    org.apache.tomcat.util.net.NioEndpoint
        Calling [org.apache.tomcat.util.net.NioEndpoint@654c1a54
].closeSocket([org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@39e9d240
:org.apache.tomcat.util.net.NioChannel@78019ed5:java.nio.channels.SocketChannel[connected
local=/127.0.0.1:8080 remote=/127.0.0.1:39988]])

java.lang.Exception: null
at
org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.doClose(NioEndpoint.java:1165)
[tomcat-embed-core-9.0.26.jar:9.0.26]
at
org.apache.tomcat.util.net.SocketWrapperBase.close(SocketWrapperBase.java:394)
[tomcat-embed-core-9.0.26.jar:9.0.26]
at
org.apache.tomcat.util.net.NioEndpoint$Poller.cancelledKey(NioEndpoint.java:667)
[tomcat-embed-core-9.0.26.jar:9.0.26]
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1592)
[tomcat-embed-core-9.0.26.jar:9.0.26]
at
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
[tomcat-embed-core-9.0.26.jar:9.0.26]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[na:1.8.0_212]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[na:1.8.0_212]
at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
[tomcat-embed-core-9.0.26.jar:9.0.26]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_212]

To print the stack trace next to the message? Every time I turn on debug
logging this exception catches me by surprise. Why not only print the stack
trace next using
org.apache.commons.lang3.exception.ExceptionUtils.getStackTrace for example?

Best regards,
Behrang Saeedzadeh
blog.behrang.org

Reply via email to