获取索引设置 API
编辑获取索引设置 API
编辑返回一个或多个索引的设置信息。对于数据流,API 返回流的后备索引的设置信息。
resp = client.indices.get_settings( index="my-index-000001", ) print(resp)
response = client.indices.get_settings( index: 'my-index-000001' ) puts response
const response = await client.indices.getSettings({ index: "my-index-000001", }); console.log(response);
GET /my-index-000001/_settings
路径参数
编辑-
<target>
- (可选,字符串) 用于限制请求的数据流、索引和别名的逗号分隔列表。支持通配符 (
*
)。要以所有数据流和索引为目标,请省略此参数或使用*
或_all
。 -
<setting>
- (可选,字符串) 用于限制请求的设置名称的逗号分隔列表或通配符表达式。
查询参数
编辑-
allow_no_indices
-
(可选,布尔值) 如果为
false
,则当任何通配符表达式、索引别名或_all
值仅以缺失或关闭的索引为目标时,请求会返回错误。即使请求以其他打开的索引为目标,此行为也适用。例如,如果索引以foo
开头,但没有索引以bar
开头,则以foo*,bar*
为目标的请求将返回错误。默认为
true
。 -
expand_wildcards
-
(可选,字符串) 通配符模式可以匹配的索引类型。如果请求可以以数据流为目标,则此参数确定通配符表达式是否匹配隐藏的数据流。支持逗号分隔的值,例如
open,hidden
。有效值为:-
all
- 匹配任何数据流或索引,包括隐藏的数据流或索引。
-
open
- 匹配打开的,非隐藏的索引。也匹配任何非隐藏的数据流。
-
closed
- 匹配关闭的,非隐藏的索引。也匹配任何非隐藏的数据流。数据流不能关闭。
-
hidden
- 匹配隐藏的数据流和隐藏的索引。必须与
open
、closed
或两者组合使用。 -
none
- 不接受通配符模式。
默认为
open
。 -
-
flat_settings
- (可选,布尔值) 如果为
true
,则以平面格式返回设置。默认为false
。 -
include_defaults
- (可选,布尔值) 如果为
true
,则在响应中返回所有默认设置。默认为false
。 -
ignore_unavailable
- (可选,布尔值) 如果为
false
,则当请求以缺失或关闭的索引为目标时,返回错误。默认为false
。 -
local
- (可选,布尔值) 如果为
true
,则请求仅从本地节点检索信息。默认为false
,这意味着信息从主节点检索。 -
master_timeout
- (可选,时间单位) 等待主节点的时间段。如果主节点在超时过期之前不可用,则请求失败并返回错误。默认为
30s
。也可以设置为-1
以表示请求永远不应超时。
示例
编辑多个数据流和索引
编辑获取设置 API 可以用于通过单个调用获取多个数据流或索引的设置。要获取集群中所有索引的设置,可以为 <target>
使用 _all
或 *
。也支持通配符表达式。以下是一些示例
resp = client.indices.get_settings( index="my-index-000001,my-index-000002", ) print(resp) resp1 = client.indices.get_settings( index="_all", ) print(resp1) resp2 = client.indices.get_settings( index="log_2099_*", ) print(resp2)
response = client.indices.get_settings( index: 'my-index-000001,my-index-000002' ) puts response response = client.indices.get_settings( index: '_all' ) puts response response = client.indices.get_settings( index: 'log_2099_*' ) puts response
const response = await client.indices.getSettings({ index: "my-index-000001,my-index-000002", }); console.log(response); const response1 = await client.indices.getSettings({ index: "_all", }); console.log(response1); const response2 = await client.indices.getSettings({ index: "log_2099_*", }); console.log(response2);
GET /my-index-000001,my-index-000002/_settings GET /_all/_settings GET /log_2099_*/_settings
按名称过滤设置
编辑可以使用通配符匹配来过滤返回的设置,如下所示:
resp = client.indices.get_settings( index="log_2099_-*", name="index.number_*", ) print(resp)
response = client.indices.get_settings( index: 'log_2099_-*', name: 'index.number_*' ) puts response
const response = await client.indices.getSettings({ index: "log_2099_-*", name: "index.number_*", }); console.log(response);
GET /log_2099_-*/_settings/index.number_*