[ 
https://issues.apache.org/jira/browse/LOG4J2-696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14053631#comment-14053631
 ] 

Gary Gregory commented on LOG4J2-696:
-------------------------------------

We might not be able to use 
{{org.apache.logging.log4j.core.config.plugins.util.TypeConverters.PatternConverter}}
 if we want to support the int flag for 
{{java.util.regex.Pattern.compile(String, int)}}.

It seems the solution is to change 
{{org.apache.logging.log4j.core.filter.RegexFilter.createFilter(Pattern, 
Boolean, Result, Result)}} and either:

- Add an int parameter and let user compute the flag themselves, or
- Add a String parameter and allow users to say things like "CASE_INSENSITIVE | 
MULTILINE" but that means parsing such things.

Perhaps we should just start with an int flag.

Thoughts?

> RegexFilter does not match multiline log messages
> -------------------------------------------------
>
>                 Key: LOG4J2-696
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-696
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Filters
>    Affects Versions: 2.0-rc2
>            Reporter: phil wray
>         Attachments: RegexFilterTest.java
>
>
> RegexFilter is constructed with a pattern, but pattern does not support 
> multiline matches, so impossible for the filter to ever match a multiline msg.
> Should maybe provide a multline="x attribute whichi should default to true 
> and result in the patter being compiled as such:
> Pattern pattern = Pattern.compile(".*line.*", Pattern.DOTALL);
> See attached UnitTest illustrating failure



--
This message was sent by Atlassian JIRA
(v6.2#6252)

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

Reply via email to