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

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

  <!-- log containing a test summary and any errors or failures, produced  -->
  <!-- at the completion of the test                                       -->
  <appender name="jmscts-report.log" class="org.apache.log4j.FileAppender">
    <param name="File" value="jmscts-report.log" />
    <param name="Append" value="false" />	    	
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d{HH:mm:ss} %m%n"/>
    </layout>	    
  </appender>

  <!-- console log -->
  <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d{HH:mm:ss} [%c] %p - %m%n"/>
    </layout>	    
  </appender>

  <!-- console log - provides less detail than STDOUT -->
  <appender name="STDOUT-SHORT" class="org.apache.log4j.ConsoleAppender">
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d{HH:mm:ss} %m%n"/>
    </layout>	    
  </appender>

  <!-- log for debugging purposes -->
  <appender name="jmscts.log" class="org.apache.log4j.FileAppender">
    <param name="File" value="jmscts.log" />
    <param name="Append" value="false" />	    	
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d{HH:mm:ss} [%c] %p - %m%n"/>
    </layout>	    
  </appender>

  <!-- logs a trace of test runs -->
  <category name="org.exolab.jmscts.core.JUnitTestRunner.Trace"
            additivity="false">
    <priority value="info" />
    <appender-ref ref="STDOUT-SHORT" />
  </category>

  <!-- logs a summary of the test run at completion -->
  <category name="org.exolab.jmscts.core.JUnitTestRunner.Summary"
            additivity="false">
    <priority value="info" />
    <appender-ref ref="jmscts-report.log" />
    <appender-ref ref="STDOUT-SHORT" />
  </category>

  <!-- logs detailed errors/failures of the test run at completion -->
  <category name="org.exolab.jmscts.core.JUnitTestRunner.Detail" 
            additivity="false">
    <priority value="info" />
    <appender-ref ref="jmscts-report.log" />
  </category>

  <root>
    <priority value="info"/>
    <appender-ref ref="jmscts.log" />
    <appender-ref ref="STDOUT" />
  </root>
	
</log4j:configuration>


<!--

   Log4J Configuration Quick Reference:
   ====================================

   
   Priority order is DEBUG < INFO < WARN < ERROR < FATAL


   PatternLayout conversion characters:
   
    %c   Category of the logging event
    %C   Fully qualified class name of the caller
    %d   Date of the logging event  (example: %d{HH:mm:ss,SSS} )
    %F   File name where the logging request was issued (caution: extremely slow)
    %l   Location information of the caller (caution: extremely slow)
    %L   Line number from where the logging request was issued (caution: extremely slow)
    %m   Application-supplied message
    %M   Method name from where the logging request was issued (caution: extremely slow)
    %n   Line separator
    %p   Priority of the logging event
    %r   Number of milliseconds since the start of the application
    %t   Name of the thread that generated the logging event
    %x   Nested diagnotic context associated with the thread
    %%   A single percent sign

   Format modifiers examples:
   
    %20c     Left pad with spaces if category is less than 20 characters long
    %-20c    Right pad with spaces if category is less than 20 characters long
    %.30c    Truncate from the beginning if category is more than 30 chars long
    %20.30c  Left pad 20 chars + truncate from beginning if more than 30 chars
    %-20.30c Right pad 20 chars + truncate from beginning if more than 30 chars

   Examples:  "%r [%t] %-5p %c %x - %m\n"
              "%-6r [%15.15t] %-5p %30.30c %x - %m\n"  
               
-->
