命名空间
编辑命名空间
编辑客户端具有一些“命名空间”,通常用于公开管理功能。命名空间对应于 Elasticsearch 中的各种管理端点。这是一个完整的命名空间列表。
命名空间 | 功能 |
---|---|
|
提供异步搜索 |
|
自动扩展功能 |
|
紧凑且对齐的文本 (CAT),主要用于终端 |
|
跨集群复制操作 |
|
以集群为中心的统计信息和信息 |
|
悬空索引管理 |
|
丰富策略管理 |
|
事件查询语言 |
|
管理 Elasticsearch 和插件提供的功能 |
|
Fleet 使用 Elasticsearch(实验性) |
|
文档和术语的图形探索 |
|
索引生命周期管理 (ILM) |
|
以索引为中心的统计信息和信息 |
|
摄取管道和处理器 |
|
许可证管理 |
|
管理 Logstash Central Management 使用的管道 |
|
专为 Kibana 的升级助手间接使用而设计 |
|
机器学习功能 |
|
监控功能 |
|
监控功能 |
|
以节点为中心的统计信息和信息 |
|
汇总功能 |
|
可搜索快照操作 |
|
安全功能 |
|
准备节点进行临时或永久关闭 |
|
快照生命周期管理 (SLM) |
|
对集群和索引进行快照/恢复的方法 |
|
在 Elasticsearch 索引和数据流上运行 SQL 查询 |
|
SSL 证书管理 |
|
任务管理 |
|
查找文本的结构 |
|
转换功能 |
|
根据条件创建监视器操作 |
|
检索有关已安装 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
需要操作主体。