Fábio Constantino created LOG4J2-3281:
-----------------------------------------

             Summary: PropertiesConfiguration.buildAppender not adding filters 
to appender
                 Key: LOG4J2-3281
                 URL: https://issues.apache.org/jira/browse/LOG4J2-3281
             Project: Log4j 2
          Issue Type: Bug
          Components: Appenders, Configurators
    Affects Versions: 2.17.0
            Reporter: Fábio Constantino


When building an appender, the _parseAppenderFilters_ method correctly finds my 
custom filter configuration in the properties file, builds it and returns it, 
but the caller ({_}buildAppender{_} method) does nothing with it resulting in 
the appender not having any filters added to it.

 

This is related to the linked issue - 
[LOG4J2-3247|https://issues.apache.org/jira/browse/LOG4J2-3247] - where the 
scenario is the same (properties file config):
{code:java}
log4j1.compatibility=true

log4j.appender.LOG_REQUEST_START_DB=my.appender.class
log4j.appender.LOG_REQUEST_START_DB.filter.ID=my.filter.class {code}
the Filter class I'm working with is the following:
{code:java}
import org.apache.log4j.spi.Filter;
import org.apache.log4j.spi.LoggingEvent;

public class MonitorFilter extends Filter {
    @Override
    public int decide(LoggingEvent event) {
        String requestId = (String)event.getMDC("requestId");
        if (StringHelper.isNullOrEmpty(requestId))
            return DENY;        
        
        if 
(!MonitorScriptManager.getInstance().getMonitorScript().filter(event))
            return DENY;
        
        return ACCEPT;
    }
} {code}
I am using the following log4j dependencies:
{code:java}
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.17.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.17.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-1.2-api</artifactId>
            <version>2.17.0</version>
        </dependency> {code}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to