本文整理汇总了PHP中Elasticsearch\Client::cluster方法的典型用法代码示例。如果您正苦于以下问题:PHP Client::cluster方法的具体用法?PHP Client::cluster怎么用?PHP Client::cluster使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Elasticsearch\Client
的用法示例。
在下文中一共展示了Client::cluster方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: isOk
public function isOk()
{
try {
$health = $this->elasticsearch->cluster()->health();
} catch (\Exception $ex) {
$this->logger->error("Elasticsearch cluster status could not be retrieved");
return false;
}
if (!is_array($health) || !array_key_exists('status', $health)) {
$this->logger->error("Elasticsearch cluster status was not returned in the expected format");
return false;
}
$clusterStatus = $health['status'];
if ($clusterStatus !== 'green') {
$this->logger->warning("Elasticsearch cluster status: {$clusterStatus}", ['clusterHealth' => $health]);
return false;
}
return true;
}
示例2: updateSettings
/**
* @param ShopIndex $index
*/
private function updateSettings(ShopIndex $index)
{
$this->client->cluster()->health(['wait_for_status' => 'yellow']);
$this->client->indices()->close(['index' => $index->getName()]);
foreach ($this->settings as $setting) {
$settings = $setting->get($index->getShop());
if (!$settings) {
continue;
}
$this->client->indices()->putSettings(['index' => $index->getName(), 'body' => $settings]);
}
$this->client->indices()->open(['index' => $index->getName()]);
$this->client->indices()->refresh(['index' => $index->getName()]);
$this->client->cluster()->health(['wait_for_status' => 'yellow']);
}