logstash multiline 把多行文件处理为一个 event

需求

多个文本文件需要存到 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

logstash multiline 把多行文件处理为一个 event的相关文章

优秀的命令行文件传输程序(转)

虽然普通用户对图形用户界面情有独钟,但命令行界面仍然扮演着一个重要的角色.命令行界面提供了一种方式让用户以文本的形式向程序发出指令,用户能完全控制系统,不想要担心资源的有限,能更快的操作.但命令行也需要恰当的工具才会更强大. 这里介绍的是命令行文件传输程序,它们支持多种不同的协议,不仅仅限于 FTP,提供了类 shell 的命令语法,非常适合写脚本. 这些程序包括:LFTP.NcFTP.Yafc 和 cURL http://news.cnblogs.com/n/502558/

使用excel批量合并子文件内容到一个文件内

说到excel大家应该都不陌生,也都对它强大的功能有所耳闻,自己虽然已经用了好多年,但也只能算入门水平,比如今天遇到的一个实际情况就完全不知道怎么处理,上网查阅资料之后才解决,这里记录一下. 实际情况就是:我有很多个小的excel文件,每个文件只有两行内容,且这些文件的列目录都是一样的,也就是说我需要把这几十行内容整理到一张表上. 方法一:直接复制粘贴 几十个文件倒是不算多,但这也不是一个通用的解决方法啊,如果文件再多岂不要累死. 方法二:用VBA宏解决: 求助百度之后果然找到了类似问题的解决方

WPF中一个控件绑定另一个控件的属性

原文:WPF中一个控件绑定另一个控件的属性 如同一个Grid中的一个按钮根据另一个按钮的显示与否作出不同的响应: 绑定的时候通过ElementName来指定控件 <Grid Margin="50,130"> <Grid.ColumnDefinitions> <ColumnDefinition/> <ColumnDefinition Width="40"/> </Grid.ColumnDefinitions>

logstash multiline 过滤 mysql slowlog 和java log

在logstash的输出中,每行开头都会加上timestamp 因此,对于mysql slowlog和java log 多行输出格式,就显得画蛇添足了:不过,logstash提供了multiline 功能 filter {   # 如果是以# Time开头的就开始新一行            if [type] == 'slowlog' {       multiline {          what => next          pattern => "^# Time:&qu

HDFS命令行文件操作

Hadoop文件操作命令形式为 hadoop fs -cmd <args> 说明:cmd是具体的文件操作命令,<args>是一组数目可变的参数. Hadoop最常用的文件操作命令,包括添加文件和目录.获取文件.删除文件等.1 添加文件和目录 HDFS有一个默认工作目录/usr/$USER,其中$USER是你的登录用户名,作者的用户名是root.该目录不能自动创建,需要执行mkdir命令创建. hadoop fs -mkdir  /usr/root 使用Hadoop的命令put将本地

将多行文件转换为一行

一.需求: 把这些数据库文件转换成一行,然后用scp -r 一次性作拷贝. 二.实例 [[email protected] ~]# cat /tmp/1 ga_10122 ga_10589 ga_11053 ga_11238 ga_11559 ga_11944 ga_12193 ga_13542 ga_35179 ga_36013 ga_36063 ga_36575 ga_36737 ga_36926 ga_37962 ga_39596 ga_39599 ga_39603 ga_39604 ga

windows程序查看可以行文件依赖库

通常在做windows下开发程序,发布的时候需要同时打包一些依赖库:我们可以通过工具直接查看需要发布的程序依赖的程序,这样可以方便快捷的打包程序 这里我们推荐使用:dependencywalker 下载地址:http://www.dependencywalker.com/ 界面如下:

ios--控件--自定义封装一个控件

感谢原作者的分享: http://blog.csdn.net/zhangao0086/article/details/45622875 前言 一个控件从外在特征来说,主要是封装这几点: 交互方式 显示样式 数据使用 对外在特征的封装,能让我们在多种环境下达到 PM 对产品的要求,并且提到代码复用率,使维护工作保持在一个相对较小的范围内:而一个好的控件除了有对外一致的体验之外,还有其内在特征: 灵活性 低耦合 易拓展 易维护 通常特征之间需要做一些取舍,比如灵活性与耦合度,有时候接口越多越能适应各

WPF 控件事件的一个小坑&hellip;

最近想判断一下 Slider 是由鼠标点击而改变值,还是由程序内部代码改变的值,发现鼠标的各种事件比如 MouseDown.MouseUp.MouseLeftButtonDown 什么的,都没有任何反应,很是无奈- 搜索了一下,发现 WPF 中的有些控件,会将一些事件自己给 Handled,导致我们之间添加事件无效... 不过可以通过在父元素上调用 AddHandler 方法,来为子元素添加事件. 这个方法有两个重载,这里最主要的是要用到这个重载的参数: public void AddHandl