# 
#  Start chemistry-opencmis-server-jcr on a Apache Jackrabbit JCR
#  repository with Jetty and logging configured in this file:
#
#    mvn -Dlog4j.configuration=file:./log4j.config -Pdevelop jetty:run
#

log4j.rootLogger=WARN, Console, File
log4j.logger.org.apache.chemistry=DEBUG

log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.EnhancedPatternLayout
log4j.appender.Console.layout.ConversionPattern=%d %-5p %c - %m%n %throwable{0}

log4j.appender.File=org.apache.log4j.FileAppender
log4j.appender.File.File=debug.log
log4j.appender.File.layout=org.apache.log4j.EnhancedPatternLayout
log4j.appender.File.layout.ConversionPattern=%d %-5p %c - %m%n
