You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Rainer Schnitker (JIRA)" <ji...@apache.org> on 2016/09/16 12:49:20 UTC

[jira] [Created] (LOG4J2-1588) Console or File Logger caches thread name, but not in older log4j2 versions

Rainer Schnitker created LOG4J2-1588:
----------------------------------------

             Summary: Console or File Logger caches thread name, but not in older log4j2 versions
                 Key: LOG4J2-1588
                 URL: https://issues.apache.org/jira/browse/LOG4J2-1588
             Project: Log4j 2
          Issue Type: Bug
    Affects Versions: 2.6.2
         Environment: Windows, Grizzly HTTP container, SLF4J API, Log4j2
            Reporter: Rainer Schnitker


Log4j2 2.6.x seems to cache the thread name. A revert to version 2.4.1. works! This affects synchronous logger: console, RollingFile

My sample code (JAX-RS Filter):

import java.io.IOException;

import javax.annotation.Priority;
import javax.inject.Inject;
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerRequestFilter;
import javax.ws.rs.ext.Provider;

import org.glassfish.grizzly.http.server.Request;
import org.slf4j.LoggerFactory;

@Provider
@Priority(Integer.MIN_VALUE)
public class GrizzlyRequestFilter implements ContainerRequestFilter {

    @Inject
    javax.inject.Provider< Request > provider;

    @Override
    public void filter( ContainerRequestContext requestContext ) throws IOException {

        Request request = this.provider.get();

        Thread thread = Thread.currentThread();

        thread.setName( request.getRemoteHost() + '/' + thread.getId() );
        
        // oops: logger thread name != expected
        LoggerFactory.getLogger(GrizzlyRequestFilter.class)
            .info( "expected thread name:" + request.getRemoteHost() + '/' + thread.getId() );
        
    }
}




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org