0

我正在使用 logstash 和 logstash 转发器设置 ELK 堆栈。我目前正在尝试将此 grok 模式用于后缀日志记录; https://github.com/whyscream/postfix-grok-patterns

在 logstash 中,我包含了存储库中提到的 2 个文件。

这就是我的转发器中的内容;

"files": [
  {
    "paths": [ "/var/log/maillog" ],
    "fields": { "type": "postfix" }
  }
]

这是我回来的结果;

      "message" => "Jul 18 10:00:05 XXXX postfix/smtp[XXXX]: XXXX: to=<XXXX>, orig_to=<XXX>, relay=XXXXX, delay=0.35, delays=0/0.02/0.09/0.24, dsn=2.0.0, status=sent (250 Ok XXXXX)",
      "@version" => "1",
      "@timestamp" => "2015-07-18T20:17:06.796Z",
      "type" => "postfix",
      "file" => "/var/log/maillog",
      "host" => "XXXX",
      "offset" => "285776"

我相信我错过了一个重要的部分。我认为我需要预先做一些事情,因为在存储库和 grok 中提到了“syslogs”,正在对程序执行检查。

我错过了哪一步?我正在使用logstash 1.5.x

谢谢你的帮助!

4

1 回答 1

1

这终于成功了

filter {   
  if [type] =~ "postfix" {
    grok {
      match => [ "message", "%{SYSLOGBASE} %{GREEDYDATA:message}" ]
      overwrite => [ "message" ]
    }     
  } 
}
于 2015-07-20T22:53:24.980 回答