Package hudson.slaves
Class ConnectionActivityMonitor
java.lang.Object
java.util.TimerTask
hudson.triggers.SafeTimerTask
hudson.model.PeriodicWork
hudson.model.AsyncPeriodicWork
hudson.slaves.ConnectionActivityMonitor
- All Implemented Interfaces:
ExtensionPoint
,Runnable
@Extension
@Symbol("connectionActivityMonitor")
public class ConnectionActivityMonitor
extends AsyncPeriodicWork
Makes sure that connections to agents are alive, and if they are not, cut them off.
If we only rely on TCP retransmission time out for this, the time it takes to detect a bad connection is in the order of 10s of minutes, so we take the matters to our own hands.
- Since:
- 1.325
- Author:
- Kohsuke Kawaguchi
-
Nested Class Summary
Nested classes/interfaces inherited from class hudson.triggers.SafeTimerTask
SafeTimerTask.ExceptionRunnable
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
Field Summary
Fields inherited from class hudson.model.AsyncPeriodicWork
name
Fields inherited from class hudson.model.PeriodicWork
DAY, HOUR, logger, MIN
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
execute
(TaskListener listener) Executes the task.long
Gets the number of milliseconds between successive executions.Methods inherited from class hudson.model.AsyncPeriodicWork
createListener, doRun, getErrorLoggingLevel, getLogFile, getNormalLoggingLevel, getSlowLoggingLevel
Methods inherited from class hudson.model.PeriodicWork
all, getInitialDelay, init
Methods inherited from class hudson.triggers.SafeTimerTask
getLogsRoot, of, run
Methods inherited from class java.util.TimerTask
cancel, scheduledExecutionTime
-
Field Details
-
enabled
public boolean enabled
-
-
Constructor Details
-
ConnectionActivityMonitor
public ConnectionActivityMonitor()
-
-
Method Details
-
execute
Description copied from class:AsyncPeriodicWork
Executes the task.- Specified by:
execute
in classAsyncPeriodicWork
- Parameters:
listener
- Output sent will be reported to the users. (this work is TBD.)- Throws:
IOException
- The caller will record the exception and moves on.InterruptedException
- The caller will record the exception and moves on.
-
getRecurrencePeriod
public long getRecurrencePeriod()Description copied from class:PeriodicWork
Gets the number of milliseconds between successive executions.Hudson calls this method once to set up a recurring timer, instead of calling this each time after the previous execution completed. So this class cannot be used to implement a non-regular recurring timer.
IOW, the method should always return the same value.
- Specified by:
getRecurrencePeriod
in classPeriodicWork
-