--- 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)