From 6b41a4da5e33192933bcbdabb61af47082acf7be Mon Sep 17 00:00:00 2001 From: brinn <brinn> Date: Tue, 22 Jul 2008 15:10:13 +0000 Subject: [PATCH] change: improve logging by writing the real class to the log file SVN: 7402 --- .../utilities/AbstractCopyActivitySensor.java | 20 +++++++++---------- .../RemoteDirectoryCopyActivitySensor.java | 15 +++++++++++++- .../remote/RemoteStoreCopyActivitySensor.java | 13 ++++++++++++ 3 files changed, 37 insertions(+), 11 deletions(-) diff --git a/common/source/java/ch/systemsx/cisd/common/utilities/AbstractCopyActivitySensor.java b/common/source/java/ch/systemsx/cisd/common/utilities/AbstractCopyActivitySensor.java index 7dcc6025895..448bcb34910 100644 --- a/common/source/java/ch/systemsx/cisd/common/utilities/AbstractCopyActivitySensor.java +++ b/common/source/java/ch/systemsx/cisd/common/utilities/AbstractCopyActivitySensor.java @@ -22,8 +22,6 @@ import org.apache.log4j.Logger; import ch.systemsx.cisd.common.concurrent.InactivityMonitor.IActivitySensor; import ch.systemsx.cisd.common.exceptions.StatusFlag; import ch.systemsx.cisd.common.exceptions.StatusWithResult; -import ch.systemsx.cisd.common.logging.LogCategory; -import ch.systemsx.cisd.common.logging.LogFactory; /** * A super class for {@link IActivitySensor}s that sense changes in some sort of copy operation to @@ -33,9 +31,6 @@ import ch.systemsx.cisd.common.logging.LogFactory; */ public abstract class AbstractCopyActivitySensor implements IActivitySensor { - protected static final Logger machineLog = - LogFactory.getLogger(LogCategory.MACHINE, AbstractCopyActivitySensor.class); - protected static final int DEFAULT_MAX_ERRORS_TO_IGNORE = 3; protected final int maxErrorsToIgnore; @@ -77,6 +72,11 @@ public abstract class AbstractCopyActivitySensor implements IActivitySensor * Returns a textual description of the target. */ protected abstract String getTargetDescription(); + + /** + * Returns the machine log for the concrete implementation. + */ + protected abstract Logger getMachineLog(); // // IActivitySensor @@ -92,13 +92,13 @@ public abstract class AbstractCopyActivitySensor implements IActivitySensor if (errorCount <= maxErrorsToIgnore) { timeOfLastReportedActivity = now; - machineLog.error(describeInactivity(now) + getMachineLog().error(describeInactivity(now) + String.format(" (error count: %d <= %d, goes unreported)", errorCount, maxErrorsToIgnore)); } else { - machineLog.error(describeInactivity(now) - + " (error count: %s, reported to monitor)"); + getMachineLog().error(describeInactivity(now) + + String.format(" (error count: %s, reported to monitor)", errorCount)); } } else { @@ -106,9 +106,9 @@ public abstract class AbstractCopyActivitySensor implements IActivitySensor { timeOfLastConfirmedActivity = now; lastNonErrorResult = currentResult.tryGetResult(); - if (machineLog.isDebugEnabled()) + if (getMachineLog().isDebugEnabled()) { - machineLog.debug("Observing write activity on " + getTargetDescription()); + getMachineLog().debug("Observing write activity on " + getTargetDescription()); } } // Implementation note: This means we can report an older time of activity than what we diff --git a/common/source/java/ch/systemsx/cisd/common/utilities/RemoteDirectoryCopyActivitySensor.java b/common/source/java/ch/systemsx/cisd/common/utilities/RemoteDirectoryCopyActivitySensor.java index 63c3d06865d..6cf609f2544 100644 --- a/common/source/java/ch/systemsx/cisd/common/utilities/RemoteDirectoryCopyActivitySensor.java +++ b/common/source/java/ch/systemsx/cisd/common/utilities/RemoteDirectoryCopyActivitySensor.java @@ -18,9 +18,13 @@ package ch.systemsx.cisd.common.utilities; import java.io.File; +import org.apache.log4j.Logger; + import ch.systemsx.cisd.common.concurrent.InactivityMonitor.IActivitySensor; import ch.systemsx.cisd.common.exceptions.StatusWithResult; import ch.systemsx.cisd.common.exceptions.UnknownLastChangedException; +import ch.systemsx.cisd.common.logging.LogCategory; +import ch.systemsx.cisd.common.logging.LogFactory; /** * A {@link IActivitySensor} that senses changes in copy operations to a directory. @@ -29,6 +33,9 @@ import ch.systemsx.cisd.common.exceptions.UnknownLastChangedException; */ public final class RemoteDirectoryCopyActivitySensor extends AbstractCopyActivitySensor { + private final static Logger machineLog = + LogFactory.getLogger(LogCategory.MACHINE, RemoteDirectoryCopyActivitySensor.class); + private final File target; public RemoteDirectoryCopyActivitySensor(File target) @@ -53,7 +60,7 @@ public final class RemoteDirectoryCopyActivitySensor extends AbstractCopyActivit return StatusWithResult.create(lastChanged); } catch (UnknownLastChangedException ex) { - return StatusWithResult.<Long>createError("Cannot determine time of last change of " + return StatusWithResult.<Long> createError("Cannot determine time of last change of " + getTargetDescription()); } } @@ -64,4 +71,10 @@ public final class RemoteDirectoryCopyActivitySensor extends AbstractCopyActivit return String.format("target '%s'", target); } + @Override + protected Logger getMachineLog() + { + return machineLog; + } + } diff --git a/datamover/source/java/ch/systemsx/cisd/datamover/filesystem/remote/RemoteStoreCopyActivitySensor.java b/datamover/source/java/ch/systemsx/cisd/datamover/filesystem/remote/RemoteStoreCopyActivitySensor.java index 9945474900f..f434f8599d3 100644 --- a/datamover/source/java/ch/systemsx/cisd/datamover/filesystem/remote/RemoteStoreCopyActivitySensor.java +++ b/datamover/source/java/ch/systemsx/cisd/datamover/filesystem/remote/RemoteStoreCopyActivitySensor.java @@ -16,8 +16,12 @@ package ch.systemsx.cisd.datamover.filesystem.remote; +import org.apache.log4j.Logger; + import ch.systemsx.cisd.common.concurrent.InactivityMonitor.IActivitySensor; import ch.systemsx.cisd.common.exceptions.StatusWithResult; +import ch.systemsx.cisd.common.logging.LogCategory; +import ch.systemsx.cisd.common.logging.LogFactory; import ch.systemsx.cisd.common.utilities.AbstractCopyActivitySensor; import ch.systemsx.cisd.common.utilities.StoreItem; import ch.systemsx.cisd.datamover.filesystem.intf.IFileStore; @@ -30,6 +34,9 @@ import ch.systemsx.cisd.datamover.filesystem.intf.IFileStore; */ public class RemoteStoreCopyActivitySensor extends AbstractCopyActivitySensor { + private final static Logger machineLog = + LogFactory.getLogger(LogCategory.MACHINE, RemoteStoreCopyActivitySensor.class); + private final IFileStore destinationStore; private final StoreItem copyItem; @@ -61,4 +68,10 @@ public class RemoteStoreCopyActivitySensor extends AbstractCopyActivitySensor return String.format("item '%s' in store '%s'", copyItem, destinationStore); } + @Override + protected Logger getMachineLog() + { + return machineLog; + } + } -- GitLab