首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Apache NiFi: PutElasticSearchHttp不工作,出现空白错误

Apache NiFi: PutElasticSearchHttp不工作,出现空白错误
EN

Stack Overflow用户
提问于 2018-03-16 05:12:24
回答 3查看 3.8K关注 0票数 3

我目前在同一台机器上运行Elasticsearch版本6.2.2和Apache Nifi版本1.5.0。我正在尝试遵循Nifi的例子:https://community.hortonworks.com/articles/52856/stream-data-into-hive-like-a-king-using-nifi.html,除了不存储到Hive,我想存储到Elasticsearch。

最初,我尝试使用PutElasticsearch5处理器,但在Elasticsearch上得到以下错误:

代码语言:javascript
复制
Received message from unsupported version: [5.0.0] minimal compatible version is: [5.6.0]

当我尝试用谷歌搜索这个错误消息时,似乎一致认为应该使用PutElasticsearchHttp处理器。我的Nifi看起来像:

以及PutElasticsearchHttp处理器的配置:

当流文件到达PutElasticsearchHttp处理器时,会出现以下错误:

代码语言:javascript
复制
PutElasticSearchHttp failed to insert StandardFlowFileRecord into Elasticsearch due to , transferring to failure. 

原因似乎是空的/空的。Elasticsearch日志中也没有任何内容。

在ConvertAvroToJson之后,数据是一个JSON数组,所有条目都在一行上。下面是一个示例值:

代码语言:javascript
复制
{"City": "Athens", 
 "Edition": 1896, 
 "Sport": "Aquatics", 
 "sub_sport": "Swimming",
 "Athlete": "HAJOS, Alfred", 
 "country": "HUN", 
 "Gender": "Men", 
 "Event": "100m freestyle", 
 "Event_gender": "M", 
 "Medal": "Gold"}

对如何调试/解决这个问题有什么想法吗?我需要先在Elasticsearch中创建一些东西吗?我的配置是否正确?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-03-20 00:25:00

我能够弄明白这一点。在ConvertAvroToJSON之后,流文件是包含JSON索引的JSON数组的一行。因为我想存储单个索引,所以我需要一个SplitJSON处理器。现在我的Nifi看起来像这样:

SplitJson的配置如下所示:

票数 5
EN

Stack Overflow用户

发布于 2018-03-17 22:26:10

索引名称不能包含/字符。尝试使用有效的索引名称:例如sports。

票数 0
EN

Stack Overflow用户

发布于 2018-06-04 00:25:09

我有一个类似的流程,在包含splitTojSON之后,将类型更改为_doc完成了此操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49309299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档