# Uncomment to have log4j be verbose while parsing this file
log4j.debug

# CONSOLE is set to be a ConsoleAppender using a PatternLayout.
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=- %m%n
log4j.appender.CONSOLE.Threshold=INFO

# LOGFILE is set to be a RollingFileAppender appender using a TTCCLayout.
log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender
log4j.appender.LOGFILE.layout=org.apache.log4j.TTCCLayout
log4j.appender.LOGFILE.layout.ContextPrinting=true
log4j.appender.LOGFILE.layout.DateFormat=ISO8601
log4j.appender.LOGFILE.MaxFileSize=512MB
log4j.appender.LOGFILE.MaxBackupIndex=3
log4j.appender.LOGFILE.File=scout.log

# Set root category priority to DEBUG and its appender to LOGFILE.
log4j.rootCategory=DEBUG, LOGFILE

# Set the Axis enterprise logger category to FATAL and its only appender to CONSOLE.
log4j.logger.org.apache.axis.enterprise=FATAL, CONSOLE