+#
+#
+# If you are having problems with logging you may debug Log4J initialization,
+# start the application with a system property log4j.configDebug set to "true".
+# E.g.:
+#
+# java -Dlog4j.configDebug=true
+#
### ************ APPENDER ***********************************###
### direct log messages to stdout ###
### direct messages to file hibernate.log ###
log4j.appender.file=org.apache.log4j.FileAppender
-log4j.appender.file.File=hibernate.log
+log4j.appender.file.File=./target/hibernate.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### set log levels - for more verbose logging change 'info' to 'debug' ###
-log4j.rootLogger=warn, stdout
+log4j.rootLogger=warn, stdout, file
- ### *** CDM *** ###
+ ### *** CDM *** ###
-log4j.logger.eu.etaxonomy.cdm = info
-log4j.logger.eu.etaxonomy.cdm.database.init = debug
+log4j.logger.eu.etaxonomy.cdm = warn
+#
+log4j.logger.eu.etaxonomy.cdm.model.common.init = warn
+#log4j.logger.eu.etaxonomy.cdm.model.taxon.TaxonNodeByNameComparator=trace
+#
+log4j.logger.eu.etaxonomy.cdm.api.application = warn
+#log4j.logger.eu.etaxonomy.cdm.database.VocabularyStoreImpl = info
+#
+log4j.logger.eu.etaxonomy.cdm.persistence.dao.hibernate.common = warn
+log4j.logger.eu.etaxonomy.cdm.api.service.description.TransmissionEngineDistribution=info
- ### *** SPRING ************ ###
-log4j.logger.org.springframework.transaction = info
-log4j.logger.org.hibernate.engine.LoadContexts = info
-log4j.logger.org.springframework.orm.hibernate3.SessionFactoryUtils = info
-log4j.logger.org.springframework.orm.hibernate3 = info
+
+ ### *** SPRING ************ ###
+log4j.logger.org.springframework.transaction = warn
+log4j.logger.org.hibernate.engine.LoadContexts = warn
+log4j.logger.org.springframework.orm.hibernate3.SessionFactoryUtils = warn
+log4j.logger.org.springframework.orm.hibernate3 = warn
log4j.logger.org.springframework.FileSystemXmlApplicationContext = warn;
-log4j.logger.org.springframework.core.io.support = info
+log4j.logger.org.springframework.core.io.support = warn
+#log4j.logger.org.springframework.context.support = trace
- ### ***HIBERNATE ************ ###
+ ### ***HIBERNATE ************ ###
log4j.logger.org.hibernate=warn
### No warnings as thrown by SQLServer
-log4j.logger.org.hibernate.cfg = warn
+###log4j.logger.org.hibernate.cfg = warn
### No warnings as thrown by SQLServer
log4j.logger.org.hibernate.util.JDBCExceptionReporter = error
#log4j.logger.org.hibernate.hql.ast.AST=debug
### log just the SQL
-log4j.logger.org.hibernate.SQL=warn
+#log4j.logger.org.hibernate.SQL=trace
### log JDBC bind parameters ###
-log4j.logger.org.hibernate.type=warn
+#log4j.logger.org.hibernate.type=trace
### log schema export/update ###
log4j.logger.org.hibernate.tool.hbm2ddl=warn
### log HQL parse trees
-#log4j.logger.org.hibernate.hql=debug
+log4j.logger.org.hibernate.hql=warn
+log4j.logger.org.hibernate.hql.ast=warn
### log cache activity ###
#log4j.logger.org.hibernate.cache=debug
-### log transaction activity
-#log4j.logger.org.hibernate.transaction=debug
-
### log JDBC resource acquisition
log4j.logger.org.hibernate.jdbc=info
+### avoid warnings about inappropriate Annotations ###
+# TODO remove the below two line after updating to hibernate 4.x
+#log4j.logger.org.hibernate.search.engine.DocumentBuilderContainedEntity=error
+#log4j.logger.org.hibernate.search.impl.SearchFactoryImpl=error
+
### enable the following line if you want to track down connection ###
### leakages when using DriverManagerConnectionProvider ###
#log4j.logger.org.hibernate.connection.DriverManagerConnectionProvider=trace
+
+### log transaction management & binding
+#log4j.logger.eu.etaxonomy.cdm.test.integration.CdmTransactionalIntegrationTest=debug
+#log4j.logger.org.hibernate.transaction=debug
+#log4j.logger.org.hibernate.engine.transaction=debug
+#log4j.logger.org.springframework.transaction.support.TransactionSynchronizationManager=trace
+#log4j.logger.org.springframework.orm.hibernate3.HibernateTransactionManager=trace
+#log4j.logger.org.springframework.orm.hibernate5.HibernateTransactionManager=trace
+#log4j.logger.org.springframework.orm.hibernate5=trace
+#log4j.logger.org.springframework.orm.hibernate3=trace
+
+### enable logging if you want to track what is happening in the database ###
+#log4j.logger.eu.etaxonomy.cdm.persistence.hibernate.CdmPostCrudObservableListener=trace
+
+### log hibernate id generation
+#log4j.logger.org.hibernate.id = INFO
+#log4j.logger.eu.etaxonomy.cdm.persistence.hibernate.TableGenerator=debug
+
+### log dbunit dataset loading ####
+#log4j.logger.org.dbunit.operation=debug
+#log4j.logger.org.dbunit.operation.DeleteAllOperation=debug
+
+#### log spring security #####
+log4j.logger.eu.etaxonomy.cdm.persistence.hibernate.permission=debug
+log4j.logger.eu.etaxonomy.cdm.persistence.hibernate.permission.CdmAuthority=warn
+#log4j.logger.eu.etaxonomy.cdm.persistence.hibernate.CdmSecurityHibernateInterceptor=debug
+#log4j.logger.org.springframework.security.access.intercept=debug
+#log4j.logger.org.springframework.security.access.vote=debug
+#log4j.logger.eu.etaxonomy.cdm.test.integration.CdmTransactionalIntegrationTest=debug
+
+#### Lucene Fulltext index and cdmlib search facility####
+#log4j.logger.org.apache.lucene=debug
+#log4j.logger.org.apache.lucene.index.IndexWriter=debug
+#log4j.logger.org.apache.lucene.store=debug
+#log4j.logger.eu.etaxonomy.cdm.api.service.search=debug
+log4j.logger.eu.etaxonomy.cdm.api.service=debug
+#log4j.logger.eu.etaxonomy.cdm.api.service.search.LuceneSearch=warn
+
+### *** Profiling Logger ************ ###
+
+#log4j.logger.org.springframework.aop.interceptor.PerformanceMonitorInterceptor=TRACE, profiling
+### Profiling output
+#log4j.appender.profiling=org.apache.log4j.RollingFileAppender
+#log4j.appender.profiling.File=profiling.log
+#log4j.appender.profiling.MaxFileSize=1024KB
+#log4j.appender.profiling.MaxBackupIndex=1
+#log4j.appender.profiling.layout=org.apache.log4j.PatternLayout
+#log4j.appender.profiling.layout.conversionPattern=%d,%p,%m%n
+
+#log4j.logger.org.springframework.context.annotation.ClassPathBeanDefinitionScanner = trace
+