Make use of PluginLogFile in ReplicationLogFile
Change-Id: I4a75b0e8184e1d119a4a3b58585b1a5cc74806d0
diff --git a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationLogFile.java b/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationLogFile.java
index 1b88fc6..fcc3437 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationLogFile.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/replication/ReplicationLogFile.java
@@ -14,51 +14,19 @@
package com.googlesource.gerrit.plugins.replication;
-import com.google.gerrit.extensions.events.LifecycleListener;
import com.google.gerrit.extensions.systemstatus.ServerInformation;
+import com.google.gerrit.server.util.PluginLogFile;
import com.google.gerrit.server.util.SystemLog;
import com.google.inject.Inject;
-import org.apache.log4j.AsyncAppender;
-import org.apache.log4j.LogManager;
-import org.apache.log4j.Logger;
import org.apache.log4j.PatternLayout;
-public class ReplicationLogFile implements LifecycleListener {
-
- private final SystemLog systemLog;
- private final ServerInformation serverInfo;
+public class ReplicationLogFile extends PluginLogFile {
@Inject
- public ReplicationLogFile(final SystemLog systemLog,
+ public ReplicationLogFile(SystemLog systemLog,
ServerInformation serverInfo) {
- this.systemLog = systemLog;
- this.serverInfo = serverInfo;
- }
-
- @Override
- public void start() {
- Logger replicationLogger =
- LogManager.getLogger(ReplicationQueue.REPLICATION_LOG_NAME);
- String loggerName = replicationLogger.getName();
- AsyncAppender asyncAppender = systemLog.createAsyncAppender(
- loggerName, new PatternLayout("[%d] [%X{"
- + PushOne.ID_MDC_KEY + "}] %m%n"));
- replicationLogger.removeAppender(loggerName);
- replicationLogger.addAppender(asyncAppender);
- replicationLogger.setAdditivity(false);
- }
-
- @Override
- public void stop() {
- // stop is called when plugin is unloaded or when the server shutdown.
- // Only clean up when the server is shutting down to prevent issue when a
- // plugin is reloaded. The issue is that gerrit load the new plugin and then
- // unload the old one so because loggers are static, the unload of the old
- // plugin would remove the appenders just created by the new plugin.
- if (serverInfo.getState() == ServerInformation.State.SHUTDOWN) {
- LogManager.getLogger(ReplicationQueue.repLog.getName())
- .removeAllAppenders();
- }
+ super(systemLog, serverInfo, ReplicationQueue.REPLICATION_LOG_NAME,
+ new PatternLayout("[%d] [%X{" + PushOne.ID_MDC_KEY + "}] %m%n"));
}
}