I would like to have to file loggers configured that log category 'x' in a way that
I've seen examples that use Threshold to achieve different logging levels for the same category in different appenders. In this case it does not seem to be a valid solution as in both appenders i would like to have at least one category at DEBUG level.
I've tried to do something like:
<appender name="FILE_ONE" class="org.jboss.logging.appender.DailyRollingFileAppender">
...
</appender>
<appender name="FILE_TWO" class="org.jboss.logging.appender.DailyRollingFileAppender">
...
</appender>
<category name="y">
<priority value="DEBUG"/>
<appender-ref ref="FILE_ONE"/>
</category>
<category name="x">
<priority value="INFO"/>
<appender-ref ref="FILE_ONE"/>
</category>
<category name="x">
<priority value="DEBUG"/>
<appender-ref ref="FILE_TWO"/>
</category>
but second category declaration overrides the first one.
Is this even possible to do that?
Try this.. Set the priority under appender
tag by param name="Threshold"
.
<appender name="FILE_ONE" class="org.jboss.logging.appender.DailyRollingFileAppender">
<param name="Threshold" value="INFO"/>
...
</appender>
<appender name="FILE_TWO" class="org.jboss.logging.appender.DailyRollingFileAppender">
<param name="Threshold" value="DEBUG"/>
...
</appender>
Similarly to this solution you can use an own Filter to do he job. This Filter should allow a given specialCategory to log at level specialCategoryLevel, other categories at level generalLevel.
<appender name="FILE_ONE" class="org.jboss.logging.appender.DailyRollingFileAppender">
<filter class="your.own.Filter">
<param name="specialCategory" value="x" />
<param name="specialCategoryLevel" value="DEBUG" />
<param name="generalLevel" value="INFO" />
</filter>
...
</appender>
<appender name="FILE_TWO" class="org.jboss.logging.appender.DailyRollingFileAppender">
<param name="Threshold" value="DEBUG"/>
...
</appender>
<category name="y">
<appender-ref ref="FILE_ONE"/>
</category>
<category name="x">
<appender-ref ref="FILE_ONE"/>
<appender-ref ref="FILE_TWO"/>
</category>
For us works something like that:
<appender name="RAF_TIP_CommissionEnrich_v01_CC" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="/opt/sag/99/IntegrationServer/instances/prodap2a/logs/TIP_CommissionEnrich_v01_CC_Trace.log"/>
<param name="DatePattern" value="'.'yyyyMMdd"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p - %m%n"/>
</layout>
</appender>
<category name="TIP_CommissionEnrich_v01_CC">
<priority value="INFO"/>
<appender-ref ref="RAF_TIP_CommissionEnrich_v01_CC"/>
</category>
<!-- root element - leave it on the bottom of file -->
<appender name="applicationLog" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="/opt/sag/99/IntegrationServer/instances/prodap2a/logs/application.log"/>
<param name="DatePattern" value="'.'yyyyMMdd"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p - %m%n"/>
</layout>
</appender>
<root>
<level value="ERROR"/>
<appender-ref ref="applicationLog"/>
</root>
Then you have all errors + info for TIP_CommissionEnrich_v01_CC
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.