filebeat配置参数_应该怎样正确配置filebeat文件(包括multiline、input_type等)

在上图中,pattern=^b,意思是以b开头。negate有false和true两种取值,match也有after和before两种取值。下面详述:

negate参数为false,表示“否定参数=false”。multiline多行参数负负得正,表示符合pattern、match条件的行会融入多行之中、成为一条完整日志的中间部分。如果match=after,则以b开头的和前面一行将合并成一条完整日志;如果match=before,则以b开头的和后面一行将合并成一条完整日志。

negate参数为true,表示“否定参数=true”。multiline多行参数为负,表示符合match条件的行是多行的开头,是一条完整日志的开始或结尾。如果match=after,则以b开头的行是一条完整日志的开始,它和后面多个不以b开头的行组成一条完整日志;如果match=before,则以b开头的行是一条完整日志的结束,和前面多个不以b开头的合并成一条完整日志。

上面几个参数是multiline的最常见配置参数。还有其他一些参数,比如:

flush_pattern表示符合该正则表达式的,将从内存刷入硬盘。

max_lines表示如果多行信息的行数炒过该数字,则多余的都会被丢弃。默认值为500行

timeout表示超时时间,如果炒过timeout还没有新的一行日志产生,则自动结束当前的多行、形成一条日志发出去。

最后,给出两个个实际的filebeat范例(分别对应multiline.negate=false/true两种情况):

- input_type: log

#4

paths:

-/data/logs/test.log

encoding: utf-8

fields:

appsystem: test

multiline.pattern:'^[[:space:]]+'

multiline.negate: false

multiline.match: after

ignore_older: 24h

上面表示,如果不以空格开头,则这一行是一条日志的开头行,它与接下来有1或多个空格开头的各行、构成一条完整日志。

再看下一条,对应的是标准的Oracle数据库日志的filebeat配置:

- input_type: log

paths:

- /oracle/test.log

encoding: gbk

fields:

appsystem: oracle

logTypeName: oracle_log_filebeat

appprogramname: 9999

multiline.pattern: '^Mon|Tue|Web|Thu|Fri|Sat|Sun [[:space:]] Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec'

multiline.negate: true

multiline.match: after

ignore_older: 24h

#include_lines: ['apache']

#exclude_lines: ['^DBG']

上面表示,如果以“星期简称+空格+月份简称”开头的,则这一行是一条日志的开头行,它与接下来不以“星期简称+空格+月份简称”的各行、构成一条完整日志。

欢迎评论留言、私信交流大数据。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值