2017-08-07 8 views
0

logstashからcsvファイルをelasticseachにロードします。フィールドのうちの1つは、私のデータの次のコードのように表される整数のリストで示していますcsvファイルをlogstashからelasticsearchに送信する際に整数リストを解析する方法

transaction_date,customer_name,age,job,fidelity_card_id,product_id_sold, 2/24/2017;14:15:43,Roberto Michel,25,Analyst Programmer,4.17500359418653E+015,"431, 1032, 197, 684, 201, 206, 1022, 922, 556, 677","4, 9, 8, 5, 2, 3, 10, 67, 1"

私は2つの最後のフィールドがのリストであることをlogstashに作成しています設定ファイルの正確たいですどのように進めるのか分からなかった。

私が何もしなければ、elasticsearchは最後の2つのフィールドの両方を文字列としてマッピングします。あなたがsplitまたはmutateフィルタを見てみたいことがあり

答えて

0

(後者の方が使いやすいかもしれません)

+0

は、私は、スプリット付きのmutateしようと試みたが、何もフィールドが文字列でまだchagedないお返事ありがとうございました私は整数(整数の配列)として解析されたいタイプ – marda

+0

mutateフィルタも変換関数をサポートしています、あなたはそれを試してみましたか? https://www.elastic.co/guide/en/logstash/5.5/plugins-filters-mutate.html#plugins-filters-mutate-convert – alr

+0

フィルタプラグインの下にこれらの設定を追加しました。{ convert => {{" {"product_id_sold" => "integer"} split => {"quantity" => "、"} split => {"product_id_sold" =、 "} } } ただし、変換すると、フィールドの最初の値は整数としてのみ使用され、「product_id_sold」などの他の値は含まれません:723、 – marda

関連する問題