[ https://issues.apache.org/jira/browse/LOG4NET-518?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15343652#comment-15343652 ]
huiqiang yan commented on LOG4NET-518: -------------------------------------- In my understanding, the filters are performed in a sequential order, as long as there is a filter that does not match, it should be denied, rather than continue to find the next filter. As LevelRangeFilter does now. > Filters don't work when use multiple. > ------------------------------------- > > Key: LOG4NET-518 > URL: https://issues.apache.org/jira/browse/LOG4NET-518 > Project: Log4net > Issue Type: Bug > Components: Other > Affects Versions: 1.2.15 > Reporter: huiqiang yan > > I have an application managed multiple AppDomains, and my master application > can get messages from all appDomain, then log them separately. > I create appenders from each appDomains and use the 'domain name’ and 'log > level' to discriminate。 > RollingFileAppender appender = new RollingFileAppender(); > appender.AddFilter(new LevelRangeFilter > { > LevelMin = Level.Info, > LevelMax = Level.Info, > AcceptOnMatch = false, > Next = new LoggerMatchFilter > { > LoggerToMatch = name, > AcceptOnMatch = true > } > }); > when name doesn't match, the If statement in filter LoggerMatchFilter file at > line 140 ,I think it means match or doesn't match, it should be deny in else > statement. > AcceptOnMatch only use when the match is passed ,it means if should return > Accept when matched,and when it is false then return Neutral. > Not only LoggerMatchFilter has this problem, others too. -- This message was sent by Atlassian JIRA (v6.3.4#6332)