Hi Ken,

Using an XML configurator, set the threshold on the console appender to info, 
so it won't show package abc's debug logging. Add the console appender to the 
root logger. Create a rolling file appender, but don't add it to the root. 
Instead, add it to the definition of the abc logger

Details below.

Good luck,
Andy

  <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
    <!-- Set up CONSOLE so it does not show debug statements -->
    <param name="Threshold" value="INFO" />
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%c{1} - %m%n"/>
    </layout>   
  </appender>

  <appender name="RFA" class="org.apache.log4j.rolling.RollingFileAppender">
    <rollingPolicy class="org.apache.log4j.rolling.FixedWindowRollingPolicy">
      <param name="activeFileName" value="logs/yourapp_${PID}.log"/>
      <param name="fileNamePattern" value="logs/yourapp_${PID}.log.%i"/>
      <param name="minIndex" value="0"/>
      <param name="maxIndex" value="5"/>
    </rollingPolicy>
    <triggeringPolicy 
class="org.apache.log4j.rolling.SizeBasedTriggeringPolicy">
      <param name="MaxFileSize" value="10MB"/>
    </triggeringPolicy>
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d{MM/dd HH:mm:ss.SSS} %c - %m%n"/>
    </layout>
    <param name="file" value="logs/yourapp_${PID}.log"/>
    <param name="append" value="false"/>
  </appender>

  <root>
      <level value="info"/>
      <appender-ref ref="CONSOLE"/>
  </root>
  <logger name="abc">
    <level value="debug"/>
    <appender-ref ref="RFA"/>
  </logger>

On Mon, Jun 21, 2010 at 2:28 PM, Ken Sheldon <kshel...@slb.com> wrote:

     

    I am experiencing some trouble getting a logging configuration to behave as 
I want.

     

    I want to log all messages with INFO severity or higher from any logger to 
a console appender.

    And

    I want to log all messages from a particular package (“abc”) with DEBUG 
severity or higher to a (rolling) file appender.

     

    Can this be done?

     

     

Reply via email to