2014-09-20 71 views
4

我尝试为elasticsearch准备一个csv文件。然而,csv文件中有一个多行字段,代表一个非结构化文本字段。例如,Logstash:解析弹性搜索的多行字段

id_num,text 
1,"bla bla bla 
bla bla 

bla bla bla" 
2, "bla bla 
bla" 

对于没有多领域的CSV,我知道如何处理,如

input { 
    stdin {} 
} 

filter { 
    csv { 
    separator => ',' 
    columns => ["id_num","text"] 
    } 
} 

output { 
    elasticsearch { 
    host => 'localhost' 
    index_type => "locality" 
    flush_size => 1000 
    protocol => 'http' 
} 

然而,这给了我

Unclosed quote 

错误。 请帮忙!

+1

我有同样的问题。你是否设法解决它? – tranceholic 2015-11-18 05:41:34

回答

0

你有没有尝试过的多过滤器

filter { 
    multiline { 
    pattern => "(^.+id_num.+)" 
    what => "next" 
} 
} 
+0

感谢您的回答!你是说在csv过滤器之前还是之后添加多行过滤器? – user1140120 2014-09-23 17:08:14