📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

此 API 用于获取 Easysearch 集群中数据流(Data Stream)的详细信息。可以查询所有数据流,也可以通过名称过滤获取特定数据流。

API #

GET /_data_stream

API 的作用 #

获取数据流的元数据信息,包括:

  • 数据流名称:数据流的唯一标识符
  • 时间戳字段配置:数据流使用的时间戳字段名称
  • 底层索引列表:构成数据流的所有后备索引
  • 生成号:数据流的当前生成版本号
  • 健康状态:数据流的整体健康状态(GREEN/YELLOW/RED)
  • 关联的索引模板:数据流所使用的索引模板名称

API 的参数 #

查询字符串参数 #

此 API 没有额外的查询字符串参数。所有过滤通过路由参数实现。

路由参数 #

参数类型是否必需描述
namestring可选数据流的名称,支持以下格式:
- 单个名称:logs-nginx
- 多个名称(逗号分隔):logs-nginx,logs-redis
- 通配符:logs-*
如果不提供此参数,返回所有数据流

请求示例 #

# 查询所有数据流
GET /_data_stream

# 查询单个数据流
GET /_data_stream/logs-nginx

# 查询多个数据流(逗号分隔)
GET /_data_stream/logs-nginx,logs-redis,logs-apache

# 使用通配符查询
GET /_data_stream/logs-*

# 查询所有数据流(使用通配符)
GET /_data_stream/*

响应示例 #

成功响应 #

{
  "data_streams": [
    {
      "name": "logs-nginx",
      "timestamp_field": {
        "name": "@timestamp"
      },
      "indices": [
        {
          "index_name": ".ds-logs-nginx-000001",
          "index_uuid": "xYz123ABC"
        },
        {
          "index_name": ".ds-logs-nginx-000002",
          "index_uuid": "aBc456DEF"
        }
      ],
      "generation": 2,
      "status": "GREEN",
      "template": "logs-template-nginx"
    },
    {
      "name": "metrics-system",
      "timestamp_field": {
        "name": "@timestamp"
      },
      "indices": [
        {
          "index_name": ".ds-metrics-system-000001",
          "index_uuid": "GhI789JKL"
        }
      ],
      "generation": 1,
      "status": "YELLOW",
      "template": "metrics-template"
    }
  ]
}

响应字段说明 #

字段类型描述
data_streamsarray数据流列表
namestring数据流名称
timestamp_field.namestring时间戳字段名称(通常是 @timestamp
indicesarray构成数据流的后备索引列表
indices.index_namestring后备索引名称
indices.index_uuidstring后备索引的唯一标识符
generationinteger数据流的当前生成号,每次滚动会递增
statusstring健康状态:GREEN(正常)、YELLOW(警告)、RED(错误)
templatestring数据流使用的索引模板名称

空结果响应 #

当集群中没有数据流时:

{
  "data_streams": []
}

使用场景 #

  1. 监控数据流状态:定期检查所有数据流的健康状态
  2. 数据流管理:在执行删除或其他操作前,先查询数据流信息
  3. 问题排查:查看数据流的底层索引和生成信息
  4. 资源盘点:了解集群中有哪些数据流及其配置

注意事项 #

  1. 此 API 只支持 GET 方法,不支持 POST
  2. 不支持分页,所有数据流信息会在一次响应中返回
  3. 通配符查询 * 与不提供 name 参数效果相同
  4. 数据流名称区分大小写

相关文档 #