获取指定索引的详细信息,包括别名、映射、设置、默认设置和数据流信息。
API #
GET /{index}
HEAD /{index}
API 的作用 #
该 API 用于获取指定索引的详细信息,返回以下内容:
| 信息类型 | 描述 |
|---|---|
aliases | 索引的别名列表及其配置 |
mappings | 索引的字段映射定义 |
settings | 索引的自定义设置 |
defaults | 索引的默认设置(需要指定参数) |
data_streams | 数据流信息(如果是数据流) |
HEAD 方法用于检查索引是否存在,只返回状态码,不返回详细信息。
API 的参数 #
路由参数 #
| 参数 | 类型 | 是否必填 | 描述 |
|---|---|---|---|
{index} | 字符串 | 必需 | 索引名称,支持单个索引、逗号分隔的多个索引、通配符表达式或特殊值 _all/* |
Query String 参数 #
核心参数 #
| 参数 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
include_defaults | 布尔值 | 否 | false | 是否在响应中包含索引的默认设置 |
human | 布尔值 | 否 | false | 是否以人类可读的格式返回响应 |
local | 布尔值 | 否 | false | 是否从本地节点返回信息,而不去查询主节点 |
master_timeout | 时间值 | 否 | 30s | 等待主节点响应的超时时间 |
索引选项参数 #
| 参数 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
expand_wildcards | 字符串 | 否 | open | 控制通配符如何扩展。可选值:open、closed、hidden、none、all |
ignore_unavailable | 布尔值 | 否 | false | 如果为 true,忽略不存在的索引而不报错 |
allow_no_indices | 布尔值 | 否 | false | 如果为 true,当通配符没有匹配到任何索引时不报错 |
ignore_throttled | 布尔值 | 否 | false | 如果为 true,忽略被限流的索引 |
已废弃的参数 #
| 参数 | 类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
include_type_name | 布尔值 | 否 | false | 是否在响应中包含类型名称(已废弃) |
示例 #
获取单个索引信息 #
GET /my_index
响应示例:
{
"my_index": {
"aliases": {},
"mappings": {
"properties": {
"title": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"timestamp": {
"type": "date"
}
}
},
"settings": {
"index": {
"creation_date": "1641234567890",
"number_of_shards": "1",
"number_of_replicas": "1",
"uuid": "abc123",
"version": {
"created": "7100099"
},
"provided_name": "my_index"
}
}
}
}
获取多个索引信息 #
GET /index1,index2
使用通配符获取索引信息 #
GET /logs-*
获取所有索引信息 #
GET /_all
或
GET /*
包含默认设置 #
GET /my_index?include_defaults=true
响应示例:
{
"my_index": {
"aliases": {},
"mappings": {...},
"settings": {
"index": {
"number_of_shards": "1",
"number_of_replicas": "1",
"refresh_interval": "1s"
}
},
"defaults": {
"index": {
"refresh_interval": "1s",
"max_result_window": "10000"
}
}
}
}
扩展到关闭的索引 #
GET /logs-*?expand_wildcards=open,closed
忽略不存在的索引 #
GET /index1,nonexistent?ignore_unavailable=true
使用人类可读格式 #
GET /my_index?human=true
检查索引是否存在(HEAD) #
HEAD /my_index
如果索引存在,返回 200 OK;否则返回 404 Not Found。
从本地节点获取信息 #
GET /my_index?local=true
设置主节点超时 #
GET /my_index?master_timeout=50s
组合多个参数 #
GET /logs-*?include_defaults=true&expand_wildcards=all&ignore_unavailable=true
expand_wildcards 参数说明 #
| 值 | 描述 |
|---|---|
open | 扩展到打开的索引(默认) |
closed | 扩展到关闭的索引 |
hidden | 扩展到隐藏的索引 |
none | 不扩展通配符 |
all | 扩展到所有索引(打开、关闭、隐藏) |
响应结构说明 #
aliases(别名) #
每个别名可以包含以下配置:
filter:别名过滤条件index_routing:索引路由值search_routing:搜索路由值is_write_index:是否为写入索引
mappings(映射) #
包含索引的字段类型定义和分析器配置。
settings(设置) #
包含索引的自定义配置,如分片数量、副本数量、刷新间隔等。
defaults(默认设置) #
仅在 include_defaults=true 时返回,包含索引的默认配置值。





