需求
多个文本文件需要存到 ES 中去。
每一个文件存放为一个 doc。
每一个文件都是多行的,行数不定,且没有固定的内容格式。
update time: Mon Jun 25 11:36:48 CST 2012 package name: AD-4.0-M6000-LiDuan(2012-03-16).ssu SANGFOR-M6000-AD-4.0.0 BUILD mother_1.0 update time: Fri Mar 25 11:02:57 CST 2016 package name: AD5.6(20150105).ssu SANGFOR-M6000-AD-5.6 BUILD20150105 update time: Fri Mar 25 11:11:59 CST 2016 package name: AD6.4(20160223).ssu SANGFOR-M6000-AD-6.4 BUILD20160223 GCS_PRODUCT1.2.0
实现
可以通过 logstash-filter-multiline 插件,配置 pattern 为 "EOF",可以实现把每一个文档当作一个 Event 处理。
input { file { path => "/home/jdu/unzip/*/*/*/*/*" discover_interval => 1 start_position => "beginning" ignore_older => 99999999999 sincedb_path => "/dev/null" stat_interval => 1 codec => multiline { //multiline 插件配置 pattern => "EOF" //每行对 EOF 进行匹配尝试,如果不匹配将应用 what 的操作 negate => true //为 true 才会应用 what 的操作 what => "previous" //不匹配 pattern 的行都当作前面一个 event 的内容 } } }
时间: 2024-10-30 21:27:59