public class HttpServerInventoryView extends Object implements ServerInventoryView, FilteredServerInventoryView
DruidNodeDiscoveryProvider to discover various queryable nodes in the
cluster such as historicals and realtime peon processes.
For each queryable server, it uses HTTP GET /druid-internal/v1/segments (see docs for SegmentListerResource.getSegments(long, long, long, javax.servlet.http.HttpServletRequest)), to keep sync'd state of segments served by those
servers.ServerView.BaseSegmentCallback, ServerView.CallbackAction, ServerView.SegmentCallback, ServerView.ServerRemovedCallback| Modifier and Type | Field and Description |
|---|---|
static com.fasterxml.jackson.core.type.TypeReference<ChangeRequestsSnapshot<DataSegmentChangeRequest>> |
SEGMENT_LIST_RESP_TYPE_REF |
| Constructor and Description |
|---|
HttpServerInventoryView(com.fasterxml.jackson.databind.ObjectMapper smileMapper,
HttpClient httpClient,
DruidNodeDiscoveryProvider druidNodeDiscoveryProvider,
com.google.common.base.Predicate<Pair<DruidServerMetadata,DataSegment>> defaultFilter,
HttpServerInventoryViewConfig config) |
| Modifier and Type | Method and Description |
|---|---|
Map<String,Object> |
getDebugInfo()
This method returns the debugging information exposed by
HttpServerInventoryViewResource and meant
for that use only. |
Collection<DruidServer> |
getInventory() |
DruidServer |
getInventoryValue(String containerKey) |
boolean |
isSegmentLoadedByServer(String serverKey,
DataSegment segment) |
boolean |
isStarted() |
void |
registerSegmentCallback(Executor exec,
ServerView.SegmentCallback callback) |
void |
registerSegmentCallback(Executor exec,
ServerView.SegmentCallback callback,
com.google.common.base.Predicate<Pair<DruidServerMetadata,DataSegment>> filter) |
void |
registerServerRemovedCallback(Executor exec,
ServerView.ServerRemovedCallback callback) |
void |
start() |
void |
stop() |
public static final com.fasterxml.jackson.core.type.TypeReference<ChangeRequestsSnapshot<DataSegmentChangeRequest>> SEGMENT_LIST_RESP_TYPE_REF
@Inject
public HttpServerInventoryView(com.fasterxml.jackson.databind.ObjectMapper smileMapper,
HttpClient httpClient,
DruidNodeDiscoveryProvider druidNodeDiscoveryProvider,
com.google.common.base.Predicate<Pair<DruidServerMetadata,DataSegment>> defaultFilter,
HttpServerInventoryViewConfig config)
public void start()
public void stop()
public void registerSegmentCallback(Executor exec, ServerView.SegmentCallback callback, com.google.common.base.Predicate<Pair<DruidServerMetadata,DataSegment>> filter)
registerSegmentCallback in interface FilteredServerInventoryViewpublic void registerServerRemovedCallback(Executor exec, ServerView.ServerRemovedCallback callback)
registerServerRemovedCallback in interface FilteredServerInventoryViewregisterServerRemovedCallback in interface ServerViewpublic void registerSegmentCallback(Executor exec, ServerView.SegmentCallback callback)
registerSegmentCallback in interface ServerViewpublic DruidServer getInventoryValue(String containerKey)
getInventoryValue in interface InventoryViewpublic Collection<DruidServer> getInventory()
getInventory in interface InventoryViewpublic Map<String,Object> getDebugInfo()
HttpServerInventoryViewResource and meant
for that use only. It must not be used for any other purpose.public boolean isStarted()
isStarted in interface InventoryViewpublic boolean isSegmentLoadedByServer(String serverKey, DataSegment segment)
isSegmentLoadedByServer in interface InventoryViewCopyright © 2011–2021 The Apache Software Foundation. All rights reserved.