2016-11-09 139 views
0

我使用logstash将一些文本文件解析为elasticsearch,其中我使用多行过滤器将多行分组到同一文档中,并使用grok过滤器来定义正则表达式。但是,文档具有嵌套结构,因此某些字段会发生一次,而其他字段会在同一文档中出现多次。因此,举例来说,假设我有以下结构:使用logstash将多个字段与单个字段关联

Family Name: Green 
First Name: Mary, Age: 40, Length: 170 cm 
First Name: Thomas, Age: 39, Length: 175 cm 
First Name: John, Age: 10, Length: 110 cm 

我需要做的是下列之一:

  • 要么拥有的家庭绿色,每3个值一个文档名字,年龄和长度
  • 或者有3个不同的文件,每个文件都包含姓氏,尽管它只在文本文件中显示一次。

是否有可能使用logstash实现任何选项(或它们两个)?

回答

0

有一个memorize插件,可以做你想做的。有一个使用它的例子here

如果使用logstash 5.0,使用这样的命令来安装插件:如果您正在使用5.0之前

bin/logstash-plugin install logstash-filter-memorize 

,使用这样的命令:

bin/logstash-plugin install --version 0.9.2 logstash-filter-memorize 
相关问题