日志存储处理文件中的多行记录



我的日志示例是这样的:

2017-01-03 03:38:18 +0000 field1: 123 field2: 321
field3: 1133 field4: 0901
2017-01-03 03:38:19 +0000 field1: 523 field2: 521
field3: 533 field4: 509

我对此很陌生。我应该如何编写正则表达式?

对于 file{} 输入,您应该使用多行编解码器(而不是多行 {} 过滤器),例如:

input {
  file {
    path => "..."
    codec => multiline {
      negate => "true"
      pattern => "^%{YEAR}"
      what => "previous"
    }
  }
}

你会读成,"如果该行不是以年份开头,请将其与前一行保持"。

最新更新