Package com.linkedin.venice.router.api
Class RouterHeartbeat
- java.lang.Object
-
- com.linkedin.venice.service.AbstractVeniceService
-
- com.linkedin.venice.router.api.RouterHeartbeat
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
public class RouterHeartbeat extends AbstractVeniceService
RouterHeartbeat
is a service that monitors and reports the health of current live instances in the Venice cluster.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.linkedin.venice.service.AbstractVeniceService
AbstractVeniceService.ServiceState
-
-
Field Summary
-
Fields inherited from class com.linkedin.venice.service.AbstractVeniceService
logger, serviceState
-
-
Constructor Summary
Constructors Constructor Description RouterHeartbeat(LiveInstanceMonitor monitor, VeniceHostHealth health, VeniceRouterConfig routerConfig, java.util.Optional<SSLFactory> sslFactory, StorageNodeClient storageNodeClient)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
startInner()
void
stopInner()
-
-
-
Constructor Detail
-
RouterHeartbeat
public RouterHeartbeat(LiveInstanceMonitor monitor, VeniceHostHealth health, VeniceRouterConfig routerConfig, java.util.Optional<SSLFactory> sslFactory, StorageNodeClient storageNodeClient)
- Parameters:
monitor
- LiveInstanceMonitor used to identify which storage nodes need to be queriedhealth
- VeniceHostHealth used to mark unreachable nodes as unhealthyrouterConfig
- Venice router configsslFactory
- if provided, the heartbeat will attempt to use ssl when checking the status of the storage nodes
-
-
Method Detail
-
startInner
public boolean startInner() throws java.lang.Exception
- Specified by:
startInner
in classAbstractVeniceService
- Returns:
- true if the service is completely started,
false if it is still starting asynchronously (in this case, it is the implementer's
responsibility to set
AbstractVeniceService.serviceState
toAbstractVeniceService.ServiceState.STARTED
upon completion of the async work). - Throws:
java.lang.Exception
-
stopInner
public void stopInner() throws java.lang.Exception
- Specified by:
stopInner
in classAbstractVeniceService
- Throws:
java.lang.Exception
-
-