[
https://issues.apache.org/jira/browse/LOG4J2-3281?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17467443#comment-17467443
]
ASF subversion and git services commented on LOG4J2-3281:
---------------------------------------------------------
Commit 3f3556d2294a2395f3f3043d41014846ecc3d524 in logging-log4j2's branch
refs/heads/master from Gary Gregory
[ https://gitbox.apache.org/repos/asf?p=logging-log4j2.git;h=3f3556d ]
[LOG4J2-3281] PropertiesConfiguration.buildAppender not adding filters
to custom appender.
Cherry pick and resolve from release-2.x.
> PropertiesConfiguration.buildAppender not adding filters to custom 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.1, 2.17.0
> Reporter: Fábio Constantino
> Priority: Blocker
> Fix For: 2.17.2
>
>
> 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)