summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Pursehouse <dpursehouse@collab.net>2018-06-26 13:11:41 +0900
committerDavid Pursehouse <dpursehouse@collab.net>2018-07-02 07:54:14 +0000
commit9b53b823a7085502913cb8ca227dcd3b12a391a1 (patch)
treea40023c2781b5e51e975c38725cc36e777c38a19
parent97634bf40406333c9814458cede4b8fd27d443f5 (diff)
Fix creation of plugin log file when log4j.configuration is set
When the environment variable log4j.configuration is set, log files defined by plugins don't get created because the appender can't be found. When creating a log file from a plugin, disregard the environment variable and always create it with the given layout. Bug: Issue 9345 Change-Id: Ic0bb86bfdc72fe34ce9a3cd7775daf346342b4ef
-rw-r--r--gerrit-server/src/main/java/com/google/gerrit/server/util/PluginLogFile.java2
-rw-r--r--gerrit-server/src/main/java/com/google/gerrit/server/util/SystemLog.java6
2 files changed, 6 insertions, 2 deletions
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/util/PluginLogFile.java b/gerrit-server/src/main/java/com/google/gerrit/server/util/PluginLogFile.java
index 351fbd4410..946a7e9c91 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/util/PluginLogFile.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/util/PluginLogFile.java
@@ -38,7 +38,7 @@ public abstract class PluginLogFile implements LifecycleListener {
@Override
public void start() {
- AsyncAppender asyncAppender = systemLog.createAsyncAppender(logName, layout);
+ AsyncAppender asyncAppender = systemLog.createAsyncAppender(logName, layout, true);
Logger logger = LogManager.getLogger(logName);
logger.removeAppender(logName);
logger.addAppender(asyncAppender);
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/util/SystemLog.java b/gerrit-server/src/main/java/com/google/gerrit/server/util/SystemLog.java
index db4862ce82..4efe8f2d43 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/util/SystemLog.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/util/SystemLog.java
@@ -70,13 +70,17 @@ public class SystemLog {
}
public AsyncAppender createAsyncAppender(String name, Layout layout) {
+ return createAsyncAppender(name, layout, false);
+ }
+
+ public AsyncAppender createAsyncAppender(String name, Layout layout, boolean forPlugin) {
AsyncAppender async = new AsyncAppender();
async.setName(name);
async.setBlocking(true);
async.setBufferSize(config.getInt("core", "asyncLoggingBufferSize", 64));
async.setLocationInfo(false);
- if (shouldConfigure()) {
+ if (forPlugin || shouldConfigure()) {
async.addAppender(createAppender(site.logs_dir, name, layout));
} else {
Appender appender = LogManager.getLogger(name).getAppender(name);