public class CheckHandler
extends java.lang.Object
CheckHandler
is responsible for executing a single HealthCheck defined for a TaskInfo.
The start() method returns a Future which can be waited upon. It will only complete if the
HealthCheck has failed, which is another way of saying that it has reached its maximum consecutive
failures limit. Health checks are not run during the grace period as their result would be ignored
in any case.Modifier and Type | Class and Description |
---|---|
static class |
CheckHandler.CheckRuntimeException
This class encapsulates Exceptions associated with health check execution failures.
|
static class |
CheckHandler.CheckValidationException
This class encapsulates Exceptions associated with health check validation.
|
(package private) static class |
CheckHandler.ProcessRunner
Runs the provided process and returns an exit value.
|
Constructor and Description |
---|
CheckHandler(ExecutorDriver executorDriver,
Protos.TaskInfo taskInfo,
LaunchedTask launchedTask,
CheckHandler.ProcessRunner processRunner,
Protos.HealthCheck healthCheck,
java.util.concurrent.ScheduledExecutorService scheduledExecutorService,
CheckStats healthCheckStats,
java.lang.String checkType)
Allows providing a custom
CheckHandler.ProcessRunner for testing. |
Modifier and Type | Method and Description |
---|---|
static CheckHandler |
create(ExecutorDriver executorDriver,
Protos.TaskInfo taskInfo,
LaunchedTask launchedTask,
Protos.HealthCheck healthCheck,
java.util.concurrent.ScheduledExecutorService scheduledExecutorService,
CheckStats healthCheckStats,
java.lang.String checkType) |
java.util.concurrent.ScheduledFuture<?> |
start() |
CheckHandler(ExecutorDriver executorDriver, Protos.TaskInfo taskInfo, LaunchedTask launchedTask, CheckHandler.ProcessRunner processRunner, Protos.HealthCheck healthCheck, java.util.concurrent.ScheduledExecutorService scheduledExecutorService, CheckStats healthCheckStats, java.lang.String checkType) throws CheckHandler.CheckValidationException
CheckHandler.ProcessRunner
for testing.public static CheckHandler create(ExecutorDriver executorDriver, Protos.TaskInfo taskInfo, LaunchedTask launchedTask, Protos.HealthCheck healthCheck, java.util.concurrent.ScheduledExecutorService scheduledExecutorService, CheckStats healthCheckStats, java.lang.String checkType) throws CheckHandler.CheckValidationException
public java.util.concurrent.ScheduledFuture<?> start()