创建管道
1.0 版引入
使用创建管道 API 操作在 OpenSearch 中创建或更新管道。请注意,管道要求您定义至少一个处理器,用于指定如何更改文档。
路径和 HTTP 方法
将 <pipeline-id>
替换为您的管道 ID
PUT _ingest/pipeline/<pipeline-id>
请求示例
这是一个 JSON 格式的示例,它创建一个包含两个 set
处理器和一个 uppercase
处理器的摄取管道。第一个 set
处理器将 grad_year
设置为 2023
,第二个 set
处理器将 graduated
设置为 true
。uppercase
处理器将 name
字段转换为大写。
PUT _ingest/pipeline/my-pipeline
{
"description": "This pipeline processes student data",
"processors": [
{
"set": {
"description": "Sets the graduation year to 2023",
"field": "grad_year",
"value": 2023
}
},
{
"set": {
"description": "Sets graduated to true",
"field": "graduated",
"value": true
}
},
{
"uppercase": {
"field": "name"
}
}
]
}
要了解有关错误处理的更多信息,请参阅处理管道故障。
请求正文字段
下表列出了用于创建或更新管道的请求正文字段。
参数 | 必需 | 类型 | 描述 |
---|---|---|---|
processors | 必需 | 处理器对象数组 | 一个处理器数组,每个处理器转换文档。处理器按照指定的顺序依次运行。 |
description | 可选 | 字符串 | 摄取管道的描述。 |
路径参数
参数 | 必需 | 类型 | 描述 |
---|---|---|---|
pipeline-id | 必需 | 字符串 | 分配给摄取管道的唯一标识符(即管道 ID)。 |
查询参数
参数 | 必需 | 类型 | 描述 |
---|---|---|---|
cluster_manager_timeout | 可选 | 时间 | 等待连接到集群管理器节点的时间。默认为 30 秒。 |
timeout | 可选 | 时间 | 等待响应的时间。默认为 30 秒。 |
模板片段
某些处理器参数支持 Mustache 模板片段。要获取字段的值,请将字段名用三个大括号括起来,例如 {{{field-name}}}
。
示例:使用 Mustache 模板片段的 set
摄取处理器
以下示例将字段 {{{role}}}
的值设置为 {{{tenure}}}
PUT _ingest/pipeline/my-pipeline
{
"processors": [
{
"set": {
"field": "{{{role}}}",
"value": "{{{tenure}}}"
}
}
]
}