Skip to content
Snippets Groups Projects
Commit 6b41a4da authored by brinn's avatar brinn
Browse files

change: improve logging by writing the real class to the log file

SVN: 7402
parent b9a775f1
No related branches found
No related tags found
No related merge requests found
......@@ -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
......
......@@ -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;
}
}
......@@ -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;
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment