2015-12-14 43 views
-1

GetTwitter處理器返回流動,並在後面\ r \ N(\ 0D \ 0A)文件。我正在構建Elasticsearch批量插入文件(使用MergeContent Processor),並且需要用\ n(\ 0A)替換\ r \ n。否則,我從ES獲得錯誤。 我正在考慮使用ReplaceText處理器,但不知道如何使用作爲搜索和替換參數。ReplaceText處理器 - 只需替換 r n的 n

在此先感謝。

回答

2

看來elasticsearch可以攝取JSON。從Apache NiFi GetTwitter處理器返回的數據是有效的JSON。將JSON文檔發佈到ElasticSearch時返回的錯誤是什麼?您使用什麼技術發佈到ElasticSearch?

感謝 喬

+0

嗨喬, 是,ES可以攝取單一的文件從GetTwitter處理器返回。這是我嘗試構建批量索引帖子請求時的問題。 這是我如何構建散裝柱: { 「索引」:{ 「_index」: 「mergetest」, 「_type」: 「鳴叫」}} { 「created_at」:「星期一12月14日15時15分02秒+ 0000 2015" , 「ID」:676420138284032000, 「ID_STR」: 「676420138284032000」,...鳴叫體} { 「created_at」: 「週一12月14日15時15分04秒+0000 2015」, 「ID」:676420145103937537, 「id_str」:「676420145103937537」,... tweet body} 我得到的錯誤 –

+0

我得到的錯誤: 2015-12-14 10:16:38,764錯誤[Timer-Driven Process Thread-3] oa nifi.processors.standard.PostHTTP PostHTTP [id = 90bf0313-3662-4d2b-9327-682e85da9593]無法發佈StandardFlowFileRecord [uuid = 90472cbf-72e7-4fbf-9b6b-d1a1c0b315da,聲稱= StandardContentClaim [resourceClaim = StandardResourceClaim [id = 1450106103628- 1,container = default,section = 1],offset = 355408,length = 2023 6],偏移量= 0,名稱= 2838637922784000,大小= 20236]到http:// myserver:9200/_bulk:響應代碼爲400:錯誤請求 –

+0

Igor ah我想我明白了。你是否簡單地使用binary.concatenation進行MergeContent?確保使用合併內容的標題,分隔符和頁腳設置,以便將JSON文檔合併到新的合併文檔中時,整個文檔仍然是有效的JSON(作爲一組文檔)。 –