命名空间
编辑命名空间
编辑客户端有许多“命名空间”,通常用于公开管理功能。这些命名空间对应于 Elasticsearch 中的各种管理端点。以下是命名空间的完整列表:
命名空间 | 功能 |
---|---|
|
提供异步搜索 |
|
自动伸缩功能 |
|
简洁且对齐的文本 (CAT),主要用于终端 |
|
跨集群复制操作 |
|
以集群为中心的统计信息和信息 |
|
悬挂索引管理 |
|
丰富策略管理 |
|
事件查询语言 |
|
管理 Elasticsearch 和插件提供的功能 |
|
Fleet 对 Elasticsearch 的使用 (实验性) |
|
用于文档和术语的图形浏览 |
|
索引生命周期管理 (ILM) |
|
以索引为中心的统计信息和信息 |
|
摄取管道和处理器 |
|
许可证管理 |
|
管理 Logstash 中央管理使用的管道 |
|
设计为由 Kibana 的升级助手间接使用 |
|
机器学习功能 |
|
监控功能 |
|
监控功能 |
|
以节点为中心的统计信息和信息 |
|
汇总功能 |
|
可搜索快照操作 |
|
安全功能 |
|
准备节点进行临时或永久关闭 |
|
快照生命周期管理 (SLM) |
|
快照/还原集群和索引的方法 |
|
在 Elasticsearch 索引和数据流上运行 SQL 查询 |
|
SSL 证书管理 |
|
任务管理 |
|
查找文本的结构 |
|
转换功能 |
|
Watcher 根据条件创建操作 |
|
检索有关已安装的 X-Pack 功能的信息 |
一些方法在几个不同的命名空间中可用,它们为您提供相同的信息,但分组到不同的上下文中。要了解这些命名空间如何工作,让我们看看 _stats
的输出
$client = ClientBuilder::create()->build(); // Index Stats // Corresponds to curl -XGET localhost:9200/_stats $response = $client->indices()->stats(); // Node Stats // Corresponds to curl -XGET localhost:9200/_nodes/stats $response = $client->nodes()->stats(); // Cluster Stats // Corresponds to curl -XGET localhost:9200/_cluster/stats $response = $client->cluster()->stats();
如您所见,相同的 stats()
调用是通过三个不同的命名空间进行的。有时这些方法需要参数。这些参数的工作方式与库中的任何其他方法一样。
例如,我们可以请求有关特定索引或多个索引的索引统计信息
$client = ClientBuilder::create()->build(); // Corresponds to curl -XGET localhost:9200/my_index/_stats $params['index'] = 'my_index'; $response = $client->indices()->stats($params); // Corresponds to curl -XGET localhost:9200/my_index1,my_index2/_stats $params['index'] = ['my_index1', 'my_index2']; $response = $client->indices()->stats($params);
以下示例显示如何向现有索引添加别名
$params['body'] = [ 'actions' => [ [ 'add' => [ 'index' => 'myindex', 'alias' => 'myalias' ] ] ] ]; $client->indices()->updateAliases($params);
请注意,stats
调用和 updateAliases
都采用了各种参数,每个参数都根据特定的 API 要求。 stats
API 仅需要一个或多个索引名称,而 updateAliases
需要一个操作主体。