---
title: "查询所有搜索管道"
date: 2026-01-13
lastmod: 2026-01-13
description: "介绍如何在 Easysearch 中查询所有搜索管道(Search Pipeline)的配置信息。"
tags: ["搜索管道", "搜索", "查询"]
summary: "此 API 用于获取 Easysearch 集群中所有搜索管道(Search Pipeline)的配置信息。
API # GET /_search/pipeline API 的作用 # 获取集群中所有搜索管道的配置信息。搜索管道用于自定义搜索请求和响应的处理流程。返回的信息包括:
管道 ID:每个管道的唯一标识符 配置内容:管道的处理器配置(请求处理器和响应处理器) 描述信息:管道的标签和描述(如果有) API 的参数 # 查询字符串参数 # 参数 类型 是否必需 默认值 描述 master_timeout time 可选 30s 等待主节点响应的超时时间
如果主节点未发现或断开连接,等待指定时间后操作失败 local boolean 可选 false 是否从本地节点返回信息
true:从本地节点获取
false:从主节点获取 请求示例 # # 查询所有搜索管道 GET /_search/pipeline # 设置主节点超时时间 GET /_search/pipeline?master_timeout=60s # 从本地节点获取信息 GET /_search/pipeline?"
---
此 API 用于获取 Easysearch 集群中所有搜索管道(Search Pipeline)的配置信息。
## API
```
GET /_search/pipeline
```
## API 的作用
获取集群中所有搜索管道的配置信息。搜索管道用于自定义搜索请求和响应的处理流程。返回的信息包括:
- **管道 ID**:每个管道的唯一标识符
- **配置内容**:管道的处理器配置(请求处理器和响应处理器)
- **描述信息**:管道的标签和描述(如果有)
## API 的参数
### 查询字符串参数
| 参数 | 类型 | 是否必需 | 默认值 | 描述 |
|------|------|----------|--------|------|
| `master_timeout` | time | 可选 | 30s | 等待主节点响应的超时时间
如果主节点未发现或断开连接,等待指定时间后操作失败 |
| `local` | boolean | 可选 | false | 是否从本地节点返回信息
`true`:从本地节点获取
`false`:从主节点获取 |
## 请求示例
```bash
# 查询所有搜索管道
GET /_search/pipeline
# 设置主节点超时时间
GET /_search/pipeline?master_timeout=60s
# 从本地节点获取信息
GET /_search/pipeline?local=true
```
## 响应示例
### 成功响应 - 有管道
```json
{
"count": 3,
"search_pipelines": {
"semantic-pipeline": {
"config": {
"request_processors": [
{
"type": "semantic_query_enricher",
"tag": "semantic_enrichment",
"description": "使用语义增强查询",
"model_name": "text-embedding-ada-002",
"api_key": "ENCRYPTED_VALUE:aBc123...infinilabs",
"text_field": "content",
"embedding_field": "content_embedding"
}
]
},
"version": 1
},
"filter-pipeline": {
"config": {
"request_processors": [
{
"type": "filter_query",
"tag": "public_filter",
"description": "只返回公开数据",
"query": {
"term": {
"visibility": "public"
}
},
"ignore_failure": true
}
]
},
"version": 2
},
"response-pipeline": {
"config": {
"response_processors": [
{
"type": "rename_field",
"tag": "rename_fields",
"field_mappings": [
{
"old_field": "title",
"new_field": "headline"
}
]
}
]
},
"version": 1
}
}
}
```
### 响应字段说明
| 字段 | 类型 | 描述 |
|------|------|------|
| `count` | integer | 搜索管道的总数量 |
| `search_pipelines` | object | 以管道 ID 为键的管道配置对象 |
| `search_pipelines.{id}` | object | 特定管道的配置 |
| `search_pipelines.{id}.config` | object | 管道配置对象 |
| `search_pipelines.{id}.config.request_processors` | array | 请求处理器列表 |
| `search_pipelines.{id}.config.response_processors` | array | 响应处理器列表 |
| `search_pipelines.{id}.version` | integer | 管道版本号 |
### 空结果响应
当集群中没有搜索管道时:
```json
{
"count": 0,
"search_pipelines": {}
}
```
## 使用场景
1. **管道管理**:查看集群中所有可用的搜索管道
2. **配置审核**:检查管道配置是否符合预期
3. **问题排查**:诊断搜索管道相关的问题
4. **文档生成**:生成管道配置文档
## 与相关 API 的区别
| API | 功能 |
|-----|------|
| `GET /_search/pipeline` | 获取所有搜索管道 |
| `GET /_search/pipeline/{id}` | 获取指定搜索管道 |
| `PUT /_search/pipeline/{id}` | 创建或更新搜索管道 |
| `DELETE /_search/pipeline/{id}` | 删除搜索管道 |
## 请求处理器类型
常见的请求处理器类型包括:
| 处理器 | 功能 |
|--------|------|
| `filter_query` | 添加查询过滤条件 |
| `script` | 使用脚本修改搜索请求 |
| `semantic_query_enricher` | 语义查询增强 |
## 响应处理器类型
常见的响应处理器类型包括:
| 处理器 | 功能 |
|--------|------|
| `rename_field` | 重命名字段 |
| `script` | 使用脚本处理搜索结果 |
| `rerank` | 结果重排序 |
## 注意事项
1. 此 API 只支持 GET 方法
2. API 密钥在返回时以加密格式显示(`ENCRYPTED_VALUE...infinilabs`)
3. `local=true` 时可能返回过时信息,但响应更快
4. 管道配置按创建顺序返回
5. 版本号每次更新管道时会递增
## 相关文档
- [创建搜索管道](./create-search-pipeline.md)
- [查询指定搜索管道](./get-specific-search-pipeline.md)
- [删除搜索管道](./delete-search-pipeline.md)
- [搜索文档](./search-document.md)