[ 
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)

Reply via email to