See the example at http://logging.apache.org/log4j/2.x/manual/eventlogging.html <http://logging.apache.org/log4j/2.x/manual/eventlogging.html>. You will see the call to clear the ThreadContext. It does indeed use a filter.
Ralph > On Apr 16, 2018, at 7:01 PM, Kevin Jung <mykevinj...@gmail.com> wrote: > > Hello, > > I am using Log4j 2 ThreadContext with Tomcat. I wonder if I need to clear > ThreadContext at the end (or start) of HTTP request in order to avoid the > context data being carried over to next HTTP request processing. > > I was assuming that thread context is cleared when Tomcat thread is put > back in the thread pool and when a Tomcat thread starts processing new HTTP > request, it starts with an empty thread context, nothing carried over from > the previous HTTP request. But that's my assumption, I want to make sure I > do not need to clear at the end, like using a servlet filter. Or should I > use CloseableThreadContext to avoid carrying over among HTTP requests? > > Thanks, > Kevin