TriggeringPolicyエレメントをSMTPAppenderエレメント内で定義します。 TriggeringPolicy要素のクラスはorg.apache.log4j.rolling.FilterBasedTriggeringPolicyになります。
TriggeringPolicy要素内で、クラスがorg.apache.log4j.filter.ExpressionFilterの 'filter'要素を定義します。
イベントをフィルタリングするために、任意のイベントフィールドを使用できます( 'like'キーワードを使用して正規表現をサポートします)。チェーンソーの開発スナップショットは、式の構文上のかなり良いのチュートリアルがあります。http://people.apache.org/~sdeboy
例:
<appender name="mail" class="org.apache.log4j.net.SMTPAppender">
<param name="from" value="[EMAIL PROTECTED]" />
<param name="to" value="[EMAIL PROTECTED]" />
<param name="subject" value="Test message" />
<param name="SMTPHost" value="localhost"/>
<param name="sendOnClose" value="true"/>
<triggeringPolicy class="org.apache.log4j.rolling.FilterBasedTriggeringPolicy">
<filter class="org.apache.log4j.filter.ExpressionFilter">
<param name="Expression" value="(LOGGER ~= class1 && MSG ~= test1) || (logger ~= class2 && MSG like 'TEST2')"/>
</filter>
</triggeringPolicy>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p %c{2} - %m%n"/>
</layout>
</appender>
私はここに、この答えは役立つと思います:http://stackoverflow.com/questions/34931650/log4j- xml-injecting-evaluator/34989591#34989591 – KKishore