org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse.getStatus()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(14.4k)|赞(0)|评价(0)|浏览(97)

本文整理了Java中org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse.getStatus()方法的一些代码示例,展示了ClusterHealthResponse.getStatus()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ClusterHealthResponse.getStatus()方法的具体详情如下:
包路径:org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse
类名称:ClusterHealthResponse
方法名:getStatus

ClusterHealthResponse.getStatus介绍

暂无

代码示例

代码示例来源:origin: apache/usergrid

/**
 * Check health of cluster.
 */
@Override
public Health getClusterHealth() {
  try {
    ClusterHealthResponse chr = esProvider.getClient().admin()
      .cluster().health(new ClusterHealthRequest()).get();
    return Health.valueOf( chr.getStatus().name() );
  }
  catch ( Exception ex ) {
    ex.printStackTrace();
    logger.error( "Error connecting to ElasticSearch", ex.getMessage() );
  }
  // this is bad, red alert!
  return Health.RED;
}

代码示例来源:origin: SonarSource/sonarqube

@Test
public void state() {
 ClusterHealthRequestBuilder requestBuilder = es.client().prepareHealth();
 ClusterHealthResponse state = requestBuilder.get();
 assertThat(state.getStatus()).isEqualTo(ClusterHealthStatus.GREEN);
}

代码示例来源:origin: apache/usergrid

/**
 * Check health of this specific index.
 */
@Override
public Health getIndexHealth() {
  try {
    String[] indexNames = this.getIndexes();
    final ActionFuture<ClusterHealthResponse> future =  esProvider.getClient().admin().cluster().health(
      new ClusterHealthRequest( indexNames  ) );
    //only wait 2 seconds max
    ClusterHealthResponse chr = future.actionGet(2000);
    return Health.valueOf( chr.getStatus().name() );
  }
  catch ( Exception ex ) {
    logger.error( "Error connecting to ElasticSearch", ex.getMessage() );
  }
  // this is bad, red alert!
  return Health.RED;
}

代码示例来源:origin: SonarSource/sonarqube

@Test
public void trace_logs() {
 logTester.setLevel(LoggerLevel.TRACE);
 ClusterHealthRequestBuilder requestBuilder = es.client().prepareHealth();
 ClusterHealthResponse state = requestBuilder.get();
 assertThat(state.getStatus()).isEqualTo(ClusterHealthStatus.GREEN);
 assertThat(logTester.logs()).hasSize(1);
}

代码示例来源:origin: floragunncom/search-guard

System.out.println("Clusterstate: "+chr.getStatus());
System.out.println("Number of nodes: "+chr.getNumberOfNodes());
System.out.println("Number of data nodes: "+chr.getNumberOfDataNodes());
    if (chrsg.getStatus() == ClusterHealthStatus.RED) {
      System.out.println("ERR: "+index+" index state is RED.");
    if (chrsg.getStatus() == ClusterHealthStatus.YELLOW) {
      System.out.println("INFO: "+index+" index state is YELLOW, it seems you miss some replicas");

代码示例来源:origin: SonarSource/sonarqube

@Override
public ClusterHealthStatus getClusterHealthStatus() {
 return getTransportClient().admin().cluster()
  .health(new ClusterHealthRequest().waitForStatus(ClusterHealthStatus.YELLOW).timeout(timeValueSeconds(30)))
  .actionGet().getStatus();
}

代码示例来源:origin: floragunncom/search-guard

@SuppressWarnings("resource")
@Test
public void testNodeClientDisallowedWithNonServerCertificate2() throws Exception {
  setup();
  Assert.assertEquals(clusterInfo.numNodes, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getNumberOfNodes());
  Assert.assertEquals(ClusterHealthStatus.GREEN, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getStatus());
   final Settings tcSettings = Settings.builder()
      .put(minimumSearchGuardSettings(Settings.EMPTY).get(0))
      .put("cluster.name", clusterInfo.clustername)
      .put("node.data", false)
      .put("node.master", false)
      .put("node.ingest", false)
      .put("path.home", ".")
      .put("discovery.initial_state_timeout","8s")
      .put("searchguard.ssl.transport.keystore_filepath", FileHelper.getAbsoluteFilePathFromClassPath("spock-keystore.jks"))
      .put(SSLConfigConstants.SEARCHGUARD_SSL_TRANSPORT_KEYSTORE_ALIAS,"spock")
      .build();

  log.debug("Start node client");
  
  try (Node node = new PluginAwareNode(false, tcSettings, Netty4Plugin.class, SearchGuardPlugin.class).start()) {
    Thread.sleep(50);
    Assert.assertEquals(1, node.client().admin().cluster().nodesInfo(new NodesInfoRequest()).actionGet().getNodes().size());    
  }
}

代码示例来源:origin: floragunncom/search-guard

@SuppressWarnings("resource")
@Test
public void testNodeClientDisallowedWithNonServerCertificate() throws Exception {
  setup();
  Assert.assertEquals(clusterInfo.numNodes, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getNumberOfNodes());
  Assert.assertEquals(ClusterHealthStatus.GREEN, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getStatus());

  
  final Settings tcSettings = Settings.builder()
      .put(minimumSearchGuardSettings(Settings.EMPTY).get(0))
      .put("cluster.name", clusterInfo.clustername)
      .put("node.data", false)
      .put("node.master", false)
      .put("node.ingest", false)
      .put("path.home", ".")
      .put("discovery.initial_state_timeout","8s")
      .put("searchguard.ssl.transport.keystore_filepath", FileHelper.getAbsoluteFilePathFromClassPath("kirk-keystore.jks"))
      .put(SSLConfigConstants.SEARCHGUARD_SSL_TRANSPORT_KEYSTORE_ALIAS,"kirk")
      .build();

  log.debug("Start node client");
  try (Node node = new PluginAwareNode(false, tcSettings, Netty4Plugin.class, SearchGuardPlugin.class).start()) {
    Thread.sleep(50);
    Assert.assertEquals(1, node.client().admin().cluster().nodesInfo(new NodesInfoRequest()).actionGet().getNodes().size());    
  } catch (Exception e) {
    Assert.fail(e.toString());
  }
   }

代码示例来源:origin: floragunncom/search-guard

@SuppressWarnings("resource")
@Test
public void testNodeClientAllowedWithServerCertificate() throws Exception {
  setup();
  Assert.assertEquals(clusterInfo.numNodes, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getNumberOfNodes());
  Assert.assertEquals(ClusterHealthStatus.GREEN, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getStatus());

  
  final Settings tcSettings = Settings.builder()
      .put(minimumSearchGuardSettings(Settings.EMPTY).get(0))
      .put("cluster.name", clusterInfo.clustername)
      .put("node.data", false)
      .put("node.master", false)
      .put("node.ingest", false)
      .put("path.home", ".")
      .put("discovery.initial_state_timeout","8s")
      .putList("discovery.zen.ping.unicast.hosts", clusterInfo.nodeHost+":"+clusterInfo.nodePort)
      .build();

  log.debug("Start node client");
  
  try (Node node = new PluginAwareNode(false, tcSettings, Netty4Plugin.class, SearchGuardPlugin.class).start()) {
    Thread.sleep(50);
    Assert.assertEquals(clusterInfo.numNodes+1, node.client().admin().cluster().nodesInfo(new NodesInfoRequest()).actionGet().getNodes().size());    
  }
}

代码示例来源:origin: floragunncom/search-guard

@Test
public void testCustomInterclusterRequestEvaluator() throws Exception {
  
  final Settings settings = Settings.builder()
      .put(ConfigConstants.SG_INTERCLUSTER_REQUEST_EVALUATOR_CLASS, "com.floragunn.searchguard.AlwaysFalseInterClusterRequestEvaluator")
      .put("discovery.initial_state_timeout","8s")
      .build();
  setup(Settings.EMPTY, null, settings, false,ClusterConfiguration.DEFAULT ,5,1);
  Assert.assertEquals(1, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getNumberOfNodes());
  Assert.assertEquals(ClusterHealthStatus.GREEN, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getStatus());
}

代码示例来源:origin: floragunncom/search-guard

@Test
public void testDiscoveryWithoutInitialization() throws Exception {  
  setup(Settings.EMPTY, null, Settings.EMPTY, false);
  Assert.assertEquals(clusterInfo.numNodes, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getNumberOfNodes());
  Assert.assertEquals(ClusterHealthStatus.GREEN, clusterHelper.nodeClient().admin().cluster().health(new ClusterHealthRequest().waitForGreenStatus()).actionGet().getStatus());
}

代码示例来源:origin: floragunncom/search-guard

.actionGet();
if (healthResponse.isTimedOut()) {
  throw new IOException("cluster state is " + healthResponse.getStatus().name() + " with "
      + healthResponse.getNumberOfNodes() + " nodes");
} else {
  log.debug("... cluster state ok " + healthResponse.getStatus().name() + " with "
      + healthResponse.getNumberOfNodes() + " nodes");

代码示例来源:origin: yacy/yacy_grid_mcp

public boolean clusterReady() {
  if (clusterReadyCache) return true;
  ClusterHealthResponse chr = elasticsearchClient.admin().cluster().prepareHealth().get();
  clusterReadyCache = chr.getStatus() != ClusterHealthStatus.RED;
  return clusterReadyCache;
}

代码示例来源:origin: org.elasticsearch/elasticsearch

static int prepareResponse(final ClusterHealthRequest request, final ClusterHealthResponse response,
                final ClusterState clusterState, final IndexNameExpressionResolver indexNameExpressionResolver) {
  int waitForCounter = 0;
  if (request.waitForStatus() != null && response.getStatus().value() <= request.waitForStatus().value()) {
    waitForCounter++;

代码示例来源:origin: org.elasticsearch/elasticsearch

@Override
public XContentBuilder toXContent(XContentBuilder builder, Params params) throws IOException {
  builder.startObject();
  builder.field(CLUSTER_NAME, getClusterName());
  builder.field(STATUS, getStatus().name().toLowerCase(Locale.ROOT));
  builder.field(TIMED_OUT, isTimedOut());
  builder.field(NUMBER_OF_NODES, getNumberOfNodes());
  builder.field(NUMBER_OF_DATA_NODES, getNumberOfDataNodes());
  builder.field(ACTIVE_PRIMARY_SHARDS, getActivePrimaryShards());
  builder.field(ACTIVE_SHARDS, getActiveShards());
  builder.field(RELOCATING_SHARDS, getRelocatingShards());
  builder.field(INITIALIZING_SHARDS, getInitializingShards());
  builder.field(UNASSIGNED_SHARDS, getUnassignedShards());
  builder.field(DELAYED_UNASSIGNED_SHARDS, getDelayedUnassignedShards());
  builder.field(NUMBER_OF_PENDING_TASKS, getNumberOfPendingTasks());
  builder.field(NUMBER_OF_IN_FLIGHT_FETCH, getNumberOfInFlightFetch());
  builder.humanReadableField(TASK_MAX_WAIT_TIME_IN_QUEUE_IN_MILLIS, TASK_MAX_WAIT_TIME_IN_QUEUE, getTaskMaxWaitingTime());
  builder.percentageField(ACTIVE_SHARDS_PERCENT_AS_NUMBER, ACTIVE_SHARDS_PERCENT, getActiveShardsPercent());
  String level = params.param("level", "cluster");
  boolean outputIndices = "indices".equals(level) || "shards".equals(level);
  if (outputIndices) {
    builder.startObject(INDICES);
    for (ClusterIndexHealth indexHealth : clusterStateHealth.getIndices().values()) {
      indexHealth.toXContent(builder, params);
    }
    builder.endObject();
  }
  builder.endObject();
  return builder;
}

代码示例来源:origin: org.springframework.boot/spring-boot-actuator

@Override
protected void doHealthCheck(Health.Builder builder) throws Exception {
  ClusterHealthRequest request = Requests.clusterHealthRequest(
      ObjectUtils.isEmpty(this.indices) ? ALL_INDICES : this.indices);
  ClusterHealthResponse response = this.client.admin().cluster().health(request)
      .actionGet(this.responseTimeout);
  switch (response.getStatus()) {
  case GREEN:
  case YELLOW:
    builder.up();
    break;
  case RED:
  default:
    builder.down();
    break;
  }
  builder.withDetail("clusterName", response.getClusterName());
  builder.withDetail("numberOfNodes", response.getNumberOfNodes());
  builder.withDetail("numberOfDataNodes", response.getNumberOfDataNodes());
  builder.withDetail("activePrimaryShards", response.getActivePrimaryShards());
  builder.withDetail("activeShards", response.getActiveShards());
  builder.withDetail("relocatingShards", response.getRelocatingShards());
  builder.withDetail("initializingShards", response.getInitializingShards());
  builder.withDetail("unassignedShards", response.getUnassignedShards());
}

代码示例来源:origin: org.elasticsearch/elasticsearch

private Table buildTable(final ClusterHealthResponse health, final RestRequest request) {
    Table t = getTableWithHeader(request);
    t.startRow();
    t.addCell(health.getClusterName());
    t.addCell(health.getStatus().name().toLowerCase(Locale.ROOT));
    t.addCell(health.getNumberOfNodes());
    t.addCell(health.getNumberOfDataNodes());
    t.addCell(health.getActiveShards());
    t.addCell(health.getActivePrimaryShards());
    t.addCell(health.getRelocatingShards());
    t.addCell(health.getInitializingShards());
    t.addCell(health.getUnassignedShards());
    t.addCell(health.getNumberOfPendingTasks());
    t.addCell(health.getTaskMaxWaitingTime().millis() == 0 ? "-" : health.getTaskMaxWaitingTime());
    t.addCell(String.format(Locale.ROOT, "%1.1f%%", health.getActiveShardsPercent()));
    t.endRow();
    return t;
  }
}

代码示例来源:origin: apache/metron

public static void waitForCluster(Client client, ClusterHealthStatus statusThreshold,
  String timeout) throws UnableToStartException {
 try {
  ClusterHealthResponse healthResponse = (ClusterHealthResponse) client
    .execute(ClusterHealthAction.INSTANCE,
      new ClusterHealthRequest().waitForStatus(statusThreshold).timeout(timeout))
    .actionGet();
  if (healthResponse != null && healthResponse.isTimedOut()) {
   throw new UnableToStartException("cluster state is " + healthResponse.getStatus().name()
     + " and not " + statusThreshold.name()
     + ", from here on, everything will fail!");
  }
 } catch (ElasticsearchTimeoutException e) {
  throw new UnableToStartException(
    "timeout, cluster does not respond to health request, cowardly refusing to continue with operations");
 }
}

代码示例来源:origin: awslabs/amazon-kinesis-connectors

private void printClusterStatus() {
    ClusterHealthRequestBuilder healthRequestBuilder = elasticsearchClient.admin().cluster().prepareHealth();
    ClusterHealthResponse response = healthRequestBuilder.execute().actionGet();
    if (response.getStatus().equals(ClusterHealthStatus.RED)) {
      LOG.error("Cluster health is RED. Indexing ability will be limited");
    } else if (response.getStatus().equals(ClusterHealthStatus.YELLOW)) {
      LOG.warn("Cluster health is YELLOW.");
    } else if (response.getStatus().equals(ClusterHealthStatus.GREEN)) {
      LOG.info("Cluster health is GREEN.");
    }
  }
}

代码示例来源:origin: com.amazonaws/amazon-kinesis-connectors

private void printClusterStatus() {
    ClusterHealthRequestBuilder healthRequestBuilder = elasticsearchClient.admin().cluster().prepareHealth();
    ClusterHealthResponse response = healthRequestBuilder.execute().actionGet();
    if (response.getStatus().equals(ClusterHealthStatus.RED)) {
      LOG.error("Cluster health is RED. Indexing ability will be limited");
    } else if (response.getStatus().equals(ClusterHealthStatus.YELLOW)) {
      LOG.warn("Cluster health is YELLOW.");
    } else if (response.getStatus().equals(ClusterHealthStatus.GREEN)) {
      LOG.info("Cluster health is GREEN.");
    }
  }
}

相关文章

微信公众号

最新文章

更多