# An example log4j configuration file that outputs to System.out.  The
# output information consists of relative time, log level, thread
# name, logger name, nested diagnostic context and the message in that
# order.

# For the general syntax of property based configuration files see the
# documenation of org.apache.log4j.PropertyConfigurator.

log4j.threshhold=OFF

log4j.rootLogger=INFO,LOGFILE
#log4j.rootLogger=INFO,LOGFILE,SYSLOG

# Appender LOGFILE writes to the file "/opt/zimbra/log/mailbox.log".
# Daily rolling policy with compressing the old log file while rotating!!
# The archived log files location can be changed using FileNamePattern value
log4j.appender.LOGFILE=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.LOGFILE.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.LOGFILE.RollingPolicy.FileNamePattern=/opt/zimbra/log/mailbox.log.%d{yyyy-MM-dd}
log4j.appender.LOGFILE.File=/opt/zimbra/log/mailbox.log
log4j.appender.LOGFILE.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

# Appender AUDIT writes to the file "audit.log".
log4j.appender.AUDIT=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.AUDIT.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.AUDIT.RollingPolicy.FileNamePattern=/opt/zimbra/log/audit.log.%d{yyyy-MM-dd}
log4j.appender.AUDIT.File=/opt/zimbra/log/audit.log
log4j.appender.AUDIT.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.AUDIT.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

# Save zimbra.security to AUDIT appender 
log4j.additivity.zimbra.security=false
log4j.logger.zimbra.security=INFO,AUDIT

# Syslog appender
log4j.appender.SYSLOG=org.apache.log4j.net.SyslogAppender
log4j.appender.SYSLOG.SyslogHost=localhost
log4j.appender.SYSLOG.Facility=LOCAL0
log4j.appender.SYSLOG.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.SYSLOG.layout.ConversionPattern=mailboxd: %-5p [%t] [%z] %c{1} - %m

# Logger service appender
log4j.appender.SLOGGER=org.apache.log4j.net.SyslogAppender
log4j.appender.SLOGGER.SyslogHost=mail.lsmindia.com
log4j.appender.SLOGGER.Facility=LOCAL1
log4j.appender.SLOGGER.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.SLOGGER.layout.ConversionPattern=mailboxd: %-5p [%t] [%z] %c{1} - %m

# Appender SYNC writes to the file "sync.log".
log4j.appender.SYNC=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.SYNC.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.SYNC.RollingPolicy.FileNamePattern=/opt/zimbra/log/sync.log.%d{yyyy-MM-dd}
log4j.appender.SYNC.File=/opt/zimbra/log/sync.log
log4j.appender.SYNC.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.SYNC.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

# Appender SYNCTRACE writes to the file "synctrace.log".
log4j.appender.SYNCTRACE=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.SYNCTRACE.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.SYNCTRACE.RollingPolicy.FileNamePattern=/opt/zimbra/log/synctrace.log.%d{yyyy-MM-dd}
log4j.appender.SYNCTRACE.File=/opt/zimbra/log/synctrace.log
log4j.appender.SYNCTRACE.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.SYNCTRACE.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

# Appender SYNCSTATE writes to the file "syncstate.log".
log4j.appender.SYNCSTATE=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.SYNCSTATE.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.SYNCSTATE.RollingPolicy.FileNamePattern=/opt/zimbra/log/syncstate.log.%d{yyyy-MM-dd}
log4j.appender.SYNCSTATE.File=/opt/zimbra/log/syncstate.log
log4j.appender.SYNCSTATE.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.SYNCSTATE.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

# Appender WBXML writes to the file "wbxml.log".
log4j.appender.WBXML=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.WBXML.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.WBXML.RollingPolicy.FileNamePattern=/opt/zimbra/log/wbxml.log.%d{yyyy-MM-dd}
log4j.appender.WBXML.File=/opt/zimbra/log/wbxml.log
log4j.appender.WBXML.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.WBXML.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

# Appender ACTIVITY writes to the file "activity.log".
log4j.appender.ACTIVITY=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.ACTIVITY.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.ACTIVITY.RollingPolicy.FileNamePattern=/opt/zimbra/log/activity.log.%d{yyyy-MM-dd}
log4j.appender.ACTIVITY.File=/opt/zimbra/log/activity.log
log4j.appender.ACTIVITY.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.ACTIVITY.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

# Appender SEARCHSTAT writes to the file "searchstat.log".
log4j.appender.SEARCHSTAT=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.SEARCHSTAT.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.SEARCHSTAT.RollingPolicy.FileNamePattern=/opt/zimbra/log/searchstat.log.%d{yyyy-MM-dd}
log4j.appender.SEARCHSTAT.File=/opt/zimbra/log/searchstat.log
log4j.appender.SEARCHSTAT.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.SEARCHSTAT.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

# Appender EWS writes to the file "ews.log".
log4j.appender.EWS=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.EWS.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.EWS.RollingPolicy.FileNamePattern=/opt/zimbra/log/ews.log.%d{yyyy-MM-dd}
log4j.appender.EWS.File=/opt/zimbra/log/ews.log
log4j.appender.EWS.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.EWS.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

# HttpMethodBase spews out too many WARN on the badly formatted cookies.
log4j.logger.org.apache.commons.httpclient.HttpMethodBase=ERROR

# spymemcached is too verbose at INFO level.
log4j.logger.net.spy.memcached=WARN

log4j.additivity.zimbra.sync=false
log4j.logger.zimbra.sync=INFO,SYNC
log4j.additivity.zimbra.synctrace=false
log4j.logger.zimbra.synctrace=INFO,SYNCTRACE
log4j.additivity.zimbra.syncstate=false
log4j.logger.zimbra.syncstate=INFO,SYNCSTATE
log4j.additivity.zimbra.wbxml=false
log4j.logger.zimbra.wbxml=INFO,WBXML
log4j.additivity.zimbra.activity=false
log4j.logger.zimbra.activity=INFO,ACTIVITY
log4j.logger.zimbra.searchstat=INFO,SEARCHSTAT
log4j.additivity.zimbra.ews=false
log4j.logger.zimbra.ews=INFO,EWS

log4j.logger.zimbra=INFO
log4j.logger.zimbra.op=WARN
log4j.logger.com.zimbra=INFO
log4j.additivity.zimbra.slogger=FALSE
log4j.logger.zimbra.slogger=INFO,SLOGGER
#log4j.logger.zimbra.slogger=ERROR
