|
| 1 | +# 获取数据流 API |
| 2 | + |
| 3 | +读取一个或多个[数据流](/data_streams)的信息。参阅[获取数据流信息](/data_streams/set_up_a_data_stream#获取数据流信息)。 |
| 4 | + |
| 5 | +```bash |
| 6 | +GET /_data_stream/my-data-stream |
| 7 | +``` |
| 8 | + |
| 9 | +## 请求 |
| 10 | + |
| 11 | +`GET /_data_stream/<data-stream>` |
| 12 | + |
| 13 | +## 前置条件 |
| 14 | + |
| 15 | +- 如果 Elasticsearch 安全特性启用,你必须有 `view_index_metadata` 或 `manage` 的[索引权限](/secure_the_elastic_statck/user_authorization/security_privileges#索引权限): |
| 16 | + |
| 17 | +## 路径参数 |
| 18 | + |
| 19 | +- `<data-stream>` |
| 20 | + |
| 21 | + (可选,字符串) 用逗号分隔的数据流名称列表,用于限制请求。支持通配符 (*) 表达式。如果省略,将返回所有数据流。 |
| 22 | + |
| 23 | +## 查询参数 |
| 24 | + |
| 25 | +- `expand_wildcards` |
| 26 | + |
| 27 | + (可选,字符串)通配符模式可以匹配的数据流类型。支持逗号分隔值,例如 `open,hidden`。有效值为: |
| 28 | + |
| 29 | + - `all`,`hidden` |
| 30 | + |
| 31 | + 匹配任何数据流或索引,包括[隐藏的](/rest_apis/api_conventions/multi_target_syntax#隐藏数据流和索引)。 |
| 32 | + |
| 33 | + - `open`,`closed` |
| 34 | + |
| 35 | + 匹配任何非隐藏的数据流。无法关闭 Data Streams。 |
| 36 | + |
| 37 | + - `none` |
| 38 | + |
| 39 | + 不接受通配符模式。 |
| 40 | + |
| 41 | + 默认为 `open`。 |
| 42 | + |
| 43 | +- `include_defaults` |
| 44 | + |
| 45 | + (可选,布尔值) [预览] 中的功能。如果为 `true`,则在响应中返回所有默认设置。默认为 `false`。 |
| 46 | + |
| 47 | +- `verbose` |
| 48 | + |
| 49 | + (可选,布尔值)。如果为 `true`,则返回与数据流中文档的 `@timestamp` 字段相对应的 `maximum_timestamp`。默认为 `false`。 |
| 50 | + |
| 51 | +## 响应体 |
| 52 | + |
| 53 | +- `data_streams` |
| 54 | + |
| 55 | + - `data_streams` 中对象的属性 |
| 56 | + |
| 57 | + - `name` |
| 58 | + |
| 59 | + (字符串) 数据流的名称。 |
| 60 | + |
| 61 | + - `timestamp_field` |
| 62 | + |
| 63 | + (对象)包含数据流 `@timestamp` 字段的相关信息。 |
| 64 | + |
| 65 | + - `timestamp_field` 属性 |
| 66 | + |
| 67 | + - `name` |
| 68 | + |
| 69 | + (字符串)数据流时间戳字段的名称,必须是 `@timestamp`。`@timestamp` 字段必须包含在数据流索引的每个文档中。 |
| 70 | + |
| 71 | + - `indices` |
| 72 | + |
| 73 | + (对象数组)包含数据流备份索引信息的对象数组。 |
| 74 | + |
| 75 | + 数组中的最后一项包含数据流的当前[写索引](/data_streams#写索引)信息。 |
| 76 | + |
| 77 | + - `indices` 对象属性 |
| 78 | + |
| 79 | + - `index_name` |
| 80 | + |
| 81 | + (字符串) 备份索引的名称。有关命名规则,参阅[生成](/data_streams#生成)。 |
| 82 | + |
| 83 | + - `index_uuid` |
| 84 | + |
| 85 | + (字符串)索引的通用唯一标识符(UUID)。 |
| 86 | + |
| 87 | + - `prefer_ilm` |
| 88 | + |
| 89 | + (布尔)[预览]中的功能。表示当索引生命周期管理和数据流生命周期都配置为管理此索引时,此索引是否配置为首选索引生命周期管理。 |
| 90 | + |
| 91 | + - `managed_by` |
| 92 | + |
| 93 | + (字符串)[预览]中的功能。表示管理此索引的系统。 |
| 94 | + |
| 95 | + - `generation` |
| 96 | + |
| 97 | + (整数)数据流的[生成](/data_streams#生成)生成数。这个数字是数据流翻转的累积计数,从 `1` 开始。 |
| 98 | + |
| 99 | + - `_meta` |
| 100 | + |
| 101 | + (对象)流的自定义元数据,从流的匹配[索引模板](/data_streams/set_up_a_data_stream#创建索引模板)的 `_meta` 对象中复制。如果为空,响应将省略此属性。 |
| 102 | + |
| 103 | + - `status` |
| 104 | + |
| 105 | + (字符串) 数据流的健康状态。 |
| 106 | + |
| 107 | + 该健康状态基于数据流备份索引的主分片和副本分片的状态。 |
| 108 | + |
| 109 | + - `status` 的值 |
| 110 | + |
| 111 | + - `GREEN` |
| 112 | + |
| 113 | + 所有分片都已分配。 |
| 114 | + |
| 115 | + - `YELLOW` |
| 116 | + |
| 117 | + 所有主分片都已分配,但一个或多个副本分区未分配。 |
| 118 | + |
| 119 | + - `RED` |
| 120 | + |
| 121 | + 一个或多个主分片未分配,因此某些数据不可用。 |
| 122 | + |
| 123 | + - `template` |
| 124 | + |
| 125 | + (字符串)用于创建数据流后备索引的索引模板名称。 |
| 126 | + |
| 127 | + 该模板的索引模式必须与该数据流的名称相匹配。参阅[创建索引模板](/data_streams/set_up_a_data_stream#创建索引模板)。 |
| 128 | + |
| 129 | + - `ilm_policy` |
| 130 | + |
| 131 | + (字符串)流的匹配索引模板中当前 ILM 生命周期策略的名称。此生命周期策略在 `index.lifecycle.name` 设置中设置。 |
| 132 | + |
| 133 | + 如果模板不包含生命周期策略,则响应中不包含此属性。 |
| 134 | + |
| 135 | + :::note 提示 |
| 136 | + 数据流的后备索引可以分配不同的生命周期策略。要检索单个后备索引的生命周期策略,请使用获取索引设置 API。 |
| 137 | + ::: |
| 138 | + |
| 139 | + - `next_generation_managed_by` |
| 140 | + |
| 141 | + (字符串)[预览]中的功能。表示将管理下一代索引(即下一个数据流写入索引)的系统。 |
| 142 | + |
| 143 | + - `prefer_ilm` |
| 144 | + |
| 145 | + (布尔)[预览]中的功能。表示当索引生命周期管理和数据流生命周期都配置为管理此索引时,用于创建数据流后备索引的索引模板是否配置为首选索引[生命周期管理](/data_streams/data_stream_lifecycle)。 |
| 146 | + |
| 147 | + - `hidden` |
| 148 | + |
| 149 | + (布尔值) 如果为 `true`,则隐藏数据流。 |
| 150 | + |
| 151 | + - `system` |
| 152 | + |
| 153 | + (布尔值)如果为 `true`,则数据流由弹性堆栈组件创建和管理,不能通过正常的用户交互进行修改。 |
| 154 | + |
| 155 | + - `allow_custom_routing` |
| 156 | + |
| 157 | + (布尔值)如果为 `true`,则该数据流允许在写入请求时自定义路由。 |
| 158 | + |
| 159 | + - `replicated` |
| 160 | + |
| 161 | + (布尔值)如果为 `true`,则数据流由跨群集复制创建和管理,本地群集不能写入该数据流或更改其映射。 |
| 162 | + |
| 163 | + - `lifecycle` |
| 164 | + |
| 165 | + (对象)[预览]中的功能。包含此数据流的数据流生命周期管理配置。 |
| 166 | + |
| 167 | + - `lifecycle` 对象的属性 |
| 168 | + |
| 169 | + - `data_retention` |
| 170 | + |
| 171 | + (字符串)如果定义,则添加到此数据流中的每个文档都将至少在此时间段内保存。在此期限之后的任何时间,文档都可能被删除。如果为空,则该数据流中的每份文档都将无限期存储。 |
| 172 | + |
| 173 | + - `rollover` |
| 174 | + |
| 175 | + (对象)由群集设置 `cluster.lifecycle.default.rollover` 配置的触发后备索引翻转的条件。该属性是一个实现细节,只有当查询参数 `include_defaults` 设置为 `true` 时才能检索到。此字段的内容可能会更改。 |
| 176 | + |
| 177 | + - `rollover_on_write` |
| 178 | + |
| 179 | + (布尔值)如果为 `true`,下一次写入该数据流时将首先触发一次翻转,然后在新的后备索引中对文档进行索引。如果翻转失败,索引请求也将失败。 |
| 180 | + |
| 181 | +## 示例 |
| 182 | + |
| 183 | +```bash |
| 184 | +GET _data_stream/my-data-stream* |
| 185 | +``` |
| 186 | + |
| 187 | +API 返回以下响应: |
| 188 | + |
| 189 | +```json |
| 190 | +{ |
| 191 | + "data_streams": [ |
| 192 | + { |
| 193 | + "name": "my-data-stream", |
| 194 | + "timestamp_field": { |
| 195 | + "name": "@timestamp" |
| 196 | + }, |
| 197 | + "indices": [ |
| 198 | + { |
| 199 | + "index_name": ".ds-my-data-stream-2099.03.07-000001", |
| 200 | + "index_uuid": "xCEhwsp8Tey0-FLNFYVwSg", |
| 201 | + "prefer_ilm": true, |
| 202 | + "ilm_policy": "my-lifecycle-policy", |
| 203 | + "managed_by": "Index Lifecycle Management" |
| 204 | + }, |
| 205 | + { |
| 206 | + "index_name": ".ds-my-data-stream-2099.03.08-000002", |
| 207 | + "index_uuid": "PA_JquKGSiKcAKBA8DJ5gw", |
| 208 | + "prefer_ilm": true, |
| 209 | + "ilm_policy": "my-lifecycle-policy", |
| 210 | + "managed_by": "Index Lifecycle Management" |
| 211 | + } |
| 212 | + ], |
| 213 | + "generation": 2, |
| 214 | + "_meta": { |
| 215 | + "my-meta-field": "foo" |
| 216 | + }, |
| 217 | + "status": "GREEN", |
| 218 | + "next_generation_managed_by": "Index Lifecycle Management", |
| 219 | + "prefer_ilm": true, |
| 220 | + "template": "my-index-template", |
| 221 | + "ilm_policy": "my-lifecycle-policy", |
| 222 | + "hidden": false, |
| 223 | + "system": false, |
| 224 | + "allow_custom_routing": false, |
| 225 | + "replicated": false, |
| 226 | + "rollover_on_write": false |
| 227 | + }, |
| 228 | + { |
| 229 | + "name": "my-data-stream-two", |
| 230 | + "timestamp_field": { |
| 231 | + "name": "@timestamp" |
| 232 | + }, |
| 233 | + "indices": [ |
| 234 | + { |
| 235 | + "index_name": ".ds-my-data-stream-two-2099.03.08-000001", |
| 236 | + "index_uuid": "3liBu2SYS5axasRt6fUIpA", |
| 237 | + "prefer_ilm": true, |
| 238 | + "ilm_policy": "my-lifecycle-policy", |
| 239 | + "managed_by": "Index Lifecycle Management" |
| 240 | + } |
| 241 | + ], |
| 242 | + "generation": 1, |
| 243 | + "_meta": { |
| 244 | + "my-meta-field": "foo" |
| 245 | + }, |
| 246 | + "status": "YELLOW", |
| 247 | + "next_generation_managed_by": "Index Lifecycle Management", |
| 248 | + "prefer_ilm": true, |
| 249 | + "template": "my-index-template", |
| 250 | + "ilm_policy": "my-lifecycle-policy", |
| 251 | + "hidden": false, |
| 252 | + "system": false, |
| 253 | + "allow_custom_routing": false, |
| 254 | + "replicated": false, |
| 255 | + "rollover_on_write": false |
| 256 | + } |
| 257 | + ] |
| 258 | +} |
| 259 | +``` |
| 260 | + |
| 261 | +# [原文链接](https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-get-data-stream.html) |
0 commit comments