<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

  <appender name="console" class="org.apache.log4j.ConsoleAppender">
    <layout class="org.apache.log4j.PatternLayout">
      <param name="Target" value="System.out"/>
      <param name="ConversionPattern" value="%d [%t] %-5p %c %x - %m%n"/>
    </layout>
  </appender>

  <!-- Help identify bugs during testing -->
  <logger name="org.apache.maven">
    <level value="info"/>
  </logger>

  <logger name="org.apache.maven.continuum">
    <level value="info" />
  </logger>

  <logger name="org.apache.maven.scm">
    <level value="debug" />
  </logger>
  
  <logger name="org.apache.continuum.scm.manager.Slf4jScmLogger">
    <level value="debug" />
  </logger>  

  <logger name="org.codehaus.plexus.redback">
    <level value="info"/>
  </logger>

  <!-- squelch noisy objects (for now) -->
  <logger name="org.apache.commons">
    <level value="warn"/>
  </logger>

  <logger name="net.sf.ehcache">
    <level value="warn"/>
  </logger>

  <logger name="org.codehaus.plexus.mailsender.MailSender">
    <level value="info"/>
  </logger>

  <logger name="org.codehaus.plexus.velocity">
    <level value="error"/>
  </logger>

  <logger name="org.quartz">
    <level value="info"/>
  </logger>

  <logger name="org.apache.jasper">
    <level value="info"/>
  </logger>

  <logger name="com.opensymphony.xwork">
    <level value="info"/>
  </logger>

  <!-- CONTINUUM-1228 -->
  <logger name="com.opensymphony.xwork.util.OgnlUtil">
    <level value="error"/>
  </logger>

  <logger name="com.opensymphony.webwork">
    <level value="info"/>
  </logger>

  <logger name="org.codehaus.plexus.PlexusContainer">
    <level value="info"/>
  </logger>

  <logger name="JPOX">
    <level value="warn"/>
  </logger>

  <logger name="JPOX.MetaData">
    <level value="error"/>
  </logger>

  <logger name="JPOX.RDBMS.SQL">
    <level value="error"/>
  </logger>

  <logger name="SQL">
    <level value="error"/>
  </logger>

  <logger name="freemarker">
    <level value="warn"/>
  </logger>

  <logger name="org.codehaus.plexus.component.manager.ClassicSingletonComponentManager">
    <level value="error"/>
  </logger>
  
  <logger name="org.springframework.beans.factory.xml.XmlBeanDefinitionReader">
    <level value="error"/>
  </logger>
  <logger name="org.springframework.beans.factory.support.DefaultListableBeanFactory">
    <level value="error"/>
  </logger>

  <root>
    <priority value="info" />
    <appender-ref ref="console" />
  </root>

</log4j:configuration>
