Skip to content

Commit

Permalink
ZCS-11112: Updated log4j.properties.production file as per log4j-2.17…
Browse files Browse the repository at this point in the history
… documentation
  • Loading branch information
zimsuchitgupta authored and abhishekdeshmukh2209 committed May 18, 2022
1 parent 31a4480 commit 1cb7e31
Show file tree
Hide file tree
Showing 8 changed files with 517 additions and 301 deletions.
2 changes: 1 addition & 1 deletion build-ivysettings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<property name="httpclient.async.version" value="4.1.4"/>
<property name="jetty.version" value="9.4.18.v20190429"/>
<property name="dom4j.version" value="2.1.1"/>
<property name="log4j.core.version" value="2.17.1" />
<property name="log4j.core.version" value="2.17.1" />
<property name="log4j.api.version" value="2.17.1" />
<property name="com.google.guava.version" value="28.1-jre"/>
<settings defaultResolver="chain-resolver" />
Expand Down
12 changes: 2 additions & 10 deletions common/src/java/com/zimbra/common/util/LogFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,7 @@ private LogFactory() {
}

public synchronized static void init() {
try {
Configurator.initialize(null, LC.zimbra_log4j_properties.value());
} catch (Exception e) {
ZimbraLog.misc.info("Error initializing the loggers.", e);
}
Configurator.initialize(null, LC.zimbra_log4j_properties.value());
}

public synchronized static void reset() {
Expand All @@ -55,11 +51,7 @@ public synchronized static void reset() {
log.removeAccountLoggers();
}
LogManager.shutdown(true);
try {
Configurator.initialize(null, LC.zimbra_log4j_properties.value());
} catch (Exception e) {
ZimbraLog.misc.info("Error resetting the loggers.", e);
}
Configurator.initialize(null, LC.zimbra_log4j_properties.value());
}

public static Log getLog(Class<?> clazz) {
Expand Down
33 changes: 17 additions & 16 deletions common/src/java/com/zimbra/common/util/ZimbraLog.java
Original file line number Diff line number Diff line change
Expand Up @@ -895,23 +895,24 @@ public static void toolSetupLog4j(String defaultLevel, String logFile, boolean s
}
builder.add(appenderBuilder.add(layoutBuilder));

// create a rolling file appender
ComponentBuilder policy = builder.newComponent(POLICY_TYPE)
.addComponent(builder.newComponent(POLICY_TIME_TYPE).addAttribute(POLICY_TIME_TYPE_INTERVAL, POLICY_TIME_TYPE_INTERVAL_VALUE));
appenderBuilder = builder.newAppender(APPENDER_NAME, APPENDER_TYPE)
.addAttribute(APPENDER_FILE_NAME, logFile)
.addAttribute(APPENDER_FILE_PATTERN, logFile.substring(0, logFile.lastIndexOf(".log")) + "-%d{yyyy-MM-dd}")
.add(layoutBuilder)
.addComponent(policy);
builder.add(appenderBuilder);

// create the new logger
builder.add(builder.newLogger(LOGGER_NAME, level)
.add(builder.newAppenderRef(APPENDER_NAME))
.addAttribute(LOGGER_ADDITIVITY, false));

if (null != logFile) {
// create a rolling file appender
ComponentBuilder policy = builder.newComponent(POLICY_TYPE)
.addComponent(builder.newComponent(POLICY_TIME_TYPE).addAttribute(POLICY_TIME_TYPE_INTERVAL, POLICY_TIME_TYPE_INTERVAL_VALUE));
appenderBuilder = builder.newAppender(APPENDER_NAME, APPENDER_TYPE)
.addAttribute(APPENDER_FILE_NAME, logFile)
.addAttribute(APPENDER_FILE_PATTERN, logFile.substring(0, logFile.lastIndexOf(".log")) + "-%d{yyyy-MM-dd}")
.add(layoutBuilder)
.addComponent(policy);
builder.add(appenderBuilder);

// create the new logger
builder.add(builder.newLogger(LOGGER_NAME, level)
.add(builder.newAppenderRef(APPENDER_NAME))
.addAttribute(LOGGER_ADDITIVITY, false));
}
builder.add(builder.newRootLogger(level)
.add(builder.newAppenderRef(APPENDER_NAME)));
.add(builder.newAppenderRef(DEFAULT_APPENDER_NAME)));
Configurator.initialize(builder.build());
}

Expand Down
50 changes: 32 additions & 18 deletions milter-conf/conf/milter.log4j.properties
Original file line number Diff line number Diff line change
@@ -1,20 +1,34 @@
# 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.
status = error
dest = err
name = PropertiesConfig
packages = com.zimbra

# For the general syntax of property based configuration files see the
# documenation of org.apache.log4j.PropertyConfigurator.
# Appender MILTER 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.threshhold=OFF
log4j.rootLogger=INFO,MILTER
log4j.appender.MILTER=org.apache.log4j.rolling.RollingFileAppender
log4j.appender.MILTER.RollingPolicy=org.apache.log4j.rolling.TimeBasedRollingPolicy
log4j.appender.MILTER.RollingPolicy.FileNamePattern=/opt/zimbra/log/milter.log.%d{yyyy-MM-dd}
log4j.appender.MILTER.File=/opt/zimbra/log/milter.log
log4j.appender.MILTER.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.MILTER.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n
log4j.additivity.zimbra.milter=false
log4j.logger.zimbra.milter=INFO,MILTER
log4j.additivity.zimbra.security=false
log4j.logger.zimbra.security=INFO,MILTER
# Reference https://logging.apache.org/log4j/2.0/manual/configuration.html#ConfigurationSyntax

appender.MILTER.type = RollingFile
appender.MILTER.name = milterFile
appender.MILTER.fileName = /opt/zimbra/log/milter.log
appender.MILTER.filePattern = /opt/zimbra/log/milter.log.%d{yyyy-MM-dd}
appender.MILTER.layout.type = PatternLayout
appender.MILTER.layout.pattern = %d %-5p [%t] [%z] %c{1} - %m%n
appender.MILTER.policies.type = Policies
appender.MILTER.policies.time.type = TimeBasedTriggeringPolicy
appender.MILTER.policies.time.interval = 2
appender.MILTER.policies.time.modulate = true
appender.MILTER.strategy.type = DefaultRolloverStrategy

logger.milter.name = zimbra.milter
logger.milter.level = info,MILTER
logger.milter.additivity = false
logger.milter.appenderRef.MILTER.ref = milterFile

logger.security.name = zimbra.security
logger.security.level = info,MILTER
logger.security.additivity = false

rootLogger=info,MILTER
rootLogger.appenderRef.MILTER.ref = milterFile
87 changes: 58 additions & 29 deletions store-conf/conf/imapd.log4j.properties
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,12 @@
# order.

# For the general syntax of property based configuration files see the
# documenation of org.apache.log4j.PropertyConfigurator.
# Reference https://logging.apache.org/log4j/2.0/manual/configuration.html#ConfigurationSyntax

status = error
dest = err
name = PropertiesConfig
packages = com.zimbra

log4j.threshhold=OFF

Expand All @@ -14,40 +19,64 @@ log4j.rootLogger=INFO,LOGFILE
# Appender LOGFILE writes to the file "/opt/zimbra/log/imapd.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/imapd.log.%d{yyyy-MM-dd}
log4j.appender.LOGFILE.File=/opt/zimbra/log/imapd.log
log4j.appender.LOGFILE.layout=com.zimbra.common.util.ZimbraPatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%d %-5p [%t] [%z] %c{1} - %m%n

appender.LOGFILE.type = RollingFile
appender.LOGFILE.name = imapdFile
appender.LOGFILE.fileName = /opt/zimbra/log/imapd.log
appender.LOGFILE.filePattern = /opt/zimbra/log/imapd.log.%d{yyyy-MM-dd}
appender.LOGFILE.layout.type = PatternLayout
appender.LOGFILE.layout.pattern = %d %-5p [%t] [%z] %c{1} - %m%n
appender.LOGFILE.policies.type = Policies
appender.LOGFILE.policies.time.type = TimeBasedTriggeringPolicy
appender.LOGFILE.policies.time.interval = 2
appender.LOGFILE.policies.time.modulate = true
appender.LOGFILE.strategy.type = DefaultRolloverStrategy

# Appender AUDIT writes to the file "imapd-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/imapd-audit.log.%d{yyyy-MM-dd}
log4j.appender.AUDIT.File=/opt/zimbra/log/imapd-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
appender.AUDIT.type = RollingFile
appender.AUDIT.name = auditFile
appender.AUDIT.fileName = /opt/zimbra/log/imapd-audit.log
appender.AUDIT.filePattern = /opt/zimbra/log/imapd-audit.log.%d{yyyy-MM-dd}
appender.AUDIT.layout.type = PatternLayout
appender.AUDIT.layout.pattern = %d %-5p [%t] [%z] %c{1} - %m%n
appender.AUDIT.policies.type = Policies
appender.AUDIT.policies.time.type = TimeBasedTriggeringPolicy
appender.AUDIT.policies.time.interval = 2
appender.AUDIT.policies.time.modulate = true
appender.AUDIT.strategy.type = DefaultRolloverStrategy

# 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=imap: %-5p [%t] [%z] %c{1} - %m
appender.SYSLOG.type = Syslog
appender.SYSLOG.name = syslogAppender
appender.SYSLOG.host = localhost
appender.SYSLOG.facility = LOCAL0
appender.SYSLOG.layout.type = PatternLayout
appender.SYSLOG.layout.pattern = imap: %-5p [%t] [%z] %c{1} - %m

logger.zimbra.name = zimbra.imap
logger.zimbra.level = info
logger.zimbra.additivity = false
logger.zimbra.appenderRef.LOGFILE.ref = imapdFile

logger.imap-client.name = zimbra.imap-client
logger.imap-client.level = info
logger.imap-client.additivity = false

# Save zimbra.security to AUDIT appender
logger.security.name = zimbra.security
logger.security.level = debug, AUDIT
logger.security.additivity = false
logger.security.appenderRef.AUDIT.ref = auditFile

logger.syslog.name = com.zimbra
logger.syslog.level = debug
logger.syslog.additivity = false
logger.syslog.appenderRef.SYSLOG.ref = syslogAppender

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

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

log4j.logger.zimbra=INFO
log4j.logger.zimbra.op=WARN
log4j.logger.com.zimbra=INFO
#log4j.logger.net.spy.memcached=WARN

rootLogger.level=info
rootLogger.appenderRef.LOGFILE.ref = imapdFile
Loading

0 comments on commit 1cb7e31

Please sign in to comment.