请求协助将Elasticsearch请求转换为NiFi可用的HTTP调用方法
在NiFi中通过HTTP调用实现Elasticsearch _update_by_query操作
以下是将你提供的Elasticsearch请求转换为NiFi可执行HTTP调用的具体步骤:
1. 选择核心处理器
使用InvokeHTTP处理器,该处理器负责向Elasticsearch发送HTTP请求并处理响应。
2. 配置InvokeHTTP关键参数
在处理器配置界面中,设置以下核心参数:
- HTTP Method:选择
POST,匹配原Elasticsearch请求的方法 - Remote URL:填写完整请求地址
http://localhost:9200/elastcsearch/doc1/_update_by_query(结合你提供的ES地址和请求路径拼接而成) - Content-Type:设置为
application/json,告知Elasticsearch请求体为JSON格式 - (可选)若Elasticsearch开启了身份验证,在
Basic Authentication区域填写用户名和密码
3. 构造请求体
你需要将Elasticsearch的请求体内容作为流文件的内容传入InvokeHTTP,最简单的方式是使用GenerateFlowFile处理器:
- 添加GenerateFlowFile处理器,在
Custom Text字段中粘贴以下JSON内容:
{ "query": { "term": { "state_num": 4 } }, "script": { "inline": "ctx._source.documents.add(params.text)", "params": { "text": { "number": "1", "docs_content": "this text goes here" } } } }
- 根据你的需求设置处理器的调度频率,确保请求能按预期触发
4. 连接并运行流程
- 将GenerateFlowFile处理器的
success关系连接到InvokeHTTP处理器的输入端口 - 启动两个处理器,通过查看InvokeHTTP的
success或failure关系,验证操作是否成功执行
内容的提问来源于stack exchange,提问作者Joby Thomas
相关产品推荐
相关产品推荐

