背景介绍: Filebeats 作为轻量级的日志采集软件,可以让我们对分布式项目的日志进行收集,并将结果直接发送到ES进行索引。默认情况下,Filebeats收集每一行数据代表一个event,但在实际的使用过程中,经常会遇到多行合并的情况,例如收集tomcat的完整异常日志信息,本博客主要通过例子的方式阐述Filebeats多行数据合并的各个详细参数的作用(官网例子不太好理解)。
如果想了解Filebeats的详细使用步骤,可以参考官方文档!
模拟案例:从日志中准确的收集Tomcat的异常信息,预先准备的日志内容如下
配置解读(文字描述比较抽象,结合实例配合理解):
multiline.pattern: 匹配连续多行中每行的正则表达式;
multiline.negate: 是否反对定义的正则,不反对为false,获取连续符合上述正则的多行