[
https://issues.apache.org/jira/browse/LOG4J2-2454?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16629785#comment-16629785
]
Ralph Goers edited comment on LOG4J2-2454 at 9/27/18 6:04 AM:
--------------------------------------------------------------
PatternSelector is for the PatternLayout. It controls what the output written
to the file looks like, which is what you said you wanted to do.
A Filter than always has a result of ACCEPT is useless and provides no value.
Again, The PatternSelector is what you need to use based on the requirements
you have stated.
An example might be
{code:xml}
<Appenders>
<File name="file" fileName="app.log">
<PatternLayout>
<ScriptPatternSelector defaultPattern="%msg">
<ScriptFile name="patternSelector"
path="scripts/patternSelector.groovy"/>
<PatternMatch key="team1" pattern="{[email protected]
subject=title1 priority=1 message=%msg}"/>
<PatternMatch key="team2" pattern="{[email protected]
subject=title2 priority=1, message=%msg}/>
</ScriptPatternSelector>
</PatternLayout>
</File>
</Appenders>
{code}
OTOH, if you are trying to just have different configuration data in your
appender then just do that and don't use filters. You can add whatever kinds of
attributes you want to a custom Appender.
was (Author: [email protected]):
PatternSelector is for the PatternLayout. It controls what the output written
to the file looks like, which is what you said you wanted to do.
A Filter than always has a result of ACCEPT is useless and provides no value.
Again, The PatternSelector is what you need to use based on the requirements
you have stated.
> LogEvent attach a map attribute
> -------------------------------
>
> Key: LOG4J2-2454
> URL: https://issues.apache.org/jira/browse/LOG4J2-2454
> Project: Log4j 2
> Issue Type: Improvement
> Reporter: Lipeng
> Priority: Minor
>
> We standardize the alarm base on log4j2, there are trigger rules and alarm
> handle team on the filter, these information will log to file, then our log
> analysis module will send mail to the team with the filter configuration. but
> this information can not be passed to the layout module, so I want to add an
> attribute to pass information between log4j2 components.
> example
> <AlarmAppender name="alarm">
> <Filters>
> <Alarm>
> <resolver>[email protected]</resolver>
> <subject>title1</subject>
> <priority>1</priority>
> <expression>^hello.*</expression>
> </Alarm>
> <Alarm>
> <resolver>[email protected]</resolver>
> <subject>title2</subject>
> <priority>1</priority>
> <logLevel>error</logLevel>
> </Alarm>
> </Filters>
> </AlarmAppender>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)