2.2.2 多行事件编码:
zjtest7-frontend:/usr/local/logstash-2.3.4/bin# ./plugin list | grep multi
Ignoring ffi-1.9.13 because its extensions are not built. Try: gem pristine ffi --version 1.9.13
logstash-codec-multiline
logstash-filter-multiline zjtest7-frontend:/usr/local/logstash-2.3.4/config# cat multi.comf
input {
stdin {
codec =>multiline {
pattern =>"^\["
negate=>true
what=>"previous"
} }
} output {
stdout {
codec=>rubydebug{}
}
} /********************** zjtest7-frontend:/usr/local/logstash-2.3.4/config# ../bin/logstash -f multi.comf
Settings: Default pipeline workers: 1
Pipeline main started
[Aug/25/08 12:12:12] hello world 此时为了 敲回车没反应,因为\n并不匹配是设置的^\[ 正则表达式,logstash 还得等下一行数据直到匹配成功后才会输出这个事件 zjtest7-frontend:/usr/local/logstash-2.3.4/config# ../bin/logstash -f multi.comf
Settings: Default pipeline workers: 1
Pipeline main started
[Aug/25/08 12:12:12] hello world
[Aug 9527]
{
"@timestamp" => "2016-08-25T06:29:31.182Z",
"message" => "[Aug/25/08 12:12:12] hello world",
"@version" => "1",
"host" => "0.0.0.0"
} zjtest7-frontend:/usr/local/logstash-2.3.4/config# ../bin/logstash -f multi.comf
Settings: Default pipeline workers: 1
Pipeline main started
[Aug/08/08 14:54:03] hellow world
[Aug/08/09 14:54:04] hello logstash
{
"@timestamp" => "2016-08-25T06:33:14.623Z",
"message" => "[Aug/08/08 14:54:03] hellow world",
"@version" => "1",
"host" => "0.0.0.0"
}
hello best practice
hello raochelin
[Aug/09/10] the end
{
"@timestamp" => "2016-08-25T06:34:01.344Z",
"message" => "[Aug/08/09 14:54:04] hello logstash\nhello best practice\nhello raochelin",
"@version" => "1",
"tags" => [
[0] "multiline"
],
"host" => "0.0.0.0"
} 这个插件很简单,就是把当前行的数据添加到前面一行后面,直到新进的当前行匹配^\[正则为止。

logstash 处理多行的更多相关文章

  1. Logstash 的命令行入门 ( 附上相关实验步骤 )

    Logstash 的命令行入门 ( 附上相关实验步骤 ) 在之前的博客中,我们已经在 Macbook Big Sur 环境下安装了 ELK 的相关软件,并且已经可以成功运行对应的模块: 如果没有安装的 ...

  2. logstash处理多行日志-处理java堆栈日志

    logstash处理多行日志-处理java堆栈日志 一.背景 二.需求 三.实现思路 1.分析日志 2.实现,编写pipeline文件 四.注意事项 五.参考文档 一.背景 在我们的java程序中,经 ...

  3. logstash 中多行合并

    这里我之前是在input里面配置的多行合并,合并语法为: input { beats { type => beats port => 7001 codec => multiline ...

  4. logstash匹配多行日志

    在工作中,遇到一个问题就是日志的处理,首选的方案就是ELFK(filebeat+logstash+es+kibana) 因为之前使用过logstash采集日志的时候,非常的消耗系统的资源,所以这里我选 ...

  5. Logstash-安装logstash-filter-multiline插件(解决logstash匹配多行日志)

    ELK-logstash在搬运日志的时候会出现多行日志,普通的搬运会造成保存到ES中日志一条一条的保存,很丑,而且不方便读取,logstash-filter-multiline可以解决该问题. 接下来 ...

  6. Logstash filter 的使用

    原文地址:http://techlog.cn/article/list/10182917 概述 logstash 之所以强大和流行,与其丰富的过滤器插件是分不开的 过滤器提供的并不单单是过滤的功能,还 ...

  7. ELK logstash 处理MySQL慢查询日志

    在生产环境下,logstash 经常会遇到处理多种格式的日志,不同的日志格式,解析方法不同.下面来说说logstash处理多行日志的例子,对MySQL慢查询日志进行分析,这个经常遇到过,网络上疑问也很 ...

  8. (转)如何在CentOS / RHEL 7上安装Elasticsearch,Logstash和Kibana(ELK)

    原文:https://www.howtoing.com/install-elasticsearch-logstash-and-kibana-elk-stack-on-centos-rhel-7 如果你 ...

  9. 【记录】logstash 的filter 使用

    概述 logstash 之所以强大和流行,与其丰富的过滤器插件是分不开的 过滤器提供的并不单单是过滤的功能,还可以对进入过滤器的原始数据进行复杂的逻辑处理,甚至添加独特的新事件到后续流程中 强大的文本 ...

随机推荐

  1. Histats申请Counter网站计数器 - Blog透视镜

    为了计算网页被浏览的次数,访客人数等统计数据,作为未来分析之用,可以向Histats申请免费的Counter网站计数器,它的功能相当齐全,同时也会保留一段时间的资料,当作统计比较的资料,更可以进一步付 ...

  2. 用来控制 XML 序列化的属性

    通过将下表中的属性应用于类和类成员,可以控制 XmlSerializer 序列化或反序列化该类的实例的方式.若要了解这些属性如何控制 XML 序列化,请参见使用属性控制 XML 序列化. 这些属性还可 ...

  3. eclipse工具再学习

    今天下午最后近1小时及晚上2个多小时,我都花费时间在工程环境配置上,自尊心被严重摧残,各种郁闷和抱怨.源头是我部分刷新代码后运行工程依赖的jar报错,后来找同事发现是因为我没更新pom.xml文件,重 ...

  4. 在 ASP.NET MVC 项目中使用 WebForm、 HTML

    原文地址:http://www.cnblogs.com/snowdream/archive/2009/04/17/winforms-in-mvc.html ASP.NET MVC和WebForm各有各 ...

  5. JavaScript prototype.js提升JavaScript开发效率

    参考链接:http://www.yiibai.com/prototype/ Prototype提供主要方法类别: Prototype概述 Prototype实用功能 Prototype实用方法 Pro ...

  6. 【POJ 1236 Network of Schools】强联通分量问题 Tarjan算法,缩点

    题目链接:http://poj.org/problem?id=1236 题意:给定一个表示n所学校网络连通关系的有向图.现要通过网络分发软件,规则是:若顶点u,v存在通路,发给u,则v可以通过网络从u ...

  7. ThreadPool(线程池) in .Net

    本文来自:http://rickie.cnblogs.com/archive/2004/11/23/67275.html 在多线程的程序中,经常会出现两种情况.一种情况下,应用程序中的线程把大部分的时 ...

  8. [python笔记][第二章Python序列-list]

    2016/1/27学习内容 第二章 Python序列-list list常用操作 list.append(x) list.extend(L) list.insert(index,x) list.rem ...

  9. SQL Server 添加一条数据获取自动增长列的几种方法

      数据库表设计  邓老师(老邓教的) insert into TestOne ','Test011') select @@IDENTITY as '自动增长ID' 杨老师(老杨教的) insert ...

  10. 使用Marshal.Copy把Txt行数据转为Struct类型值

    添加重要的命名空间: using System.Runtime.InteropServices; 先建立结构相同(char长度相同)的Struct类型用于转换: [StructLayout(Layou ...