
# Turbine logging configuration
#
# If we don't know the logging facility, put it into the
# turbine.log
#
log4j.rootLogger = INFO, app, console


log4j.logger.${package} = DEBUG, app, console
log4j.additivity.${package} = false

#
# Avalon log
#
log4j.logger.avalon = DEBUG, app, console
log4j.additivity.avalon = false


#
# sql log
# allows TRACE
log4j.logger.org.apache.torque.util = DEBUG, sql, console
log4j.additivity.org.apache.torque.util = false

#
# Torque log
# allows TRACE
log4j.logger.org.apache.torque = DEBUG, torque
log4j.additivity.org.apache.torque = false


# #
# Logfile definitions
#

# application.log
log4j.appender.app = org.apache.log4j.RollingFileAppender
log4j.appender.app.file = src/test/logs/application.log
log4j.appender.app.MaxFileSize=5MB
log4j.appender.app.MaxBackupIndex=5
log4j.appender.app.layout = org.apache.log4j.PatternLayout
log4j.appender.app.layout.conversionPattern = %d [%t] %-5p %c - %m%n
log4j.appender.app.append = true

#
# sql.log
#
log4j.appender.sql = org.apache.log4j.RollingFileAppender
log4j.appender.sql.file = src/test/logs/sql.log
log4j.appender.sql.MaxFileSize=5MB
log4j.appender.sql.MaxBackupIndex=5
log4j.appender.sql.layout = org.apache.log4j.PatternLayout
log4j.appender.sql.layout.conversionPattern = %d [%t] %-5p %c - %m%n
log4j.appender.sql.append = true

#
# console
#
log4j.appender.console = org.apache.log4j.ConsoleAppender
log4j.appender.console.layout = org.apache.log4j.PatternLayout
log4j.appender.console.layout.conversionPattern = %d [%t] %-5p %C{1} - %m%n

#
# torque.log
#
log4j.appender.torque = org.apache.log4j.RollingFileAppender
log4j.appender.torque.MaxFileSize=5MB
log4j.appender.torque.MaxBackupIndex=5
log4j.appender.torque.file = src/test/logs/torque.log
log4j.appender.torque.layout = org.apache.log4j.PatternLayout
log4j.appender.torque.layout.conversionPattern = %d [%t] %-5p %c - %m%n
log4j.appender.torque.append = false


