Logstash grok过滤器标记退回邮件

时间:2013-02-01 15:10:29

标签: elasticsearch logstash logstash-grok

总结:我有一些出站smtp服务器和集中邮件日志通过rsyslog到我正在使用logstash的服务器上,输出到elasticsearch,用kibana搜索。

我想为Postfix邮件日志条目标记为“BOUNCED”,如:

2013-02-01T16:50:14+02:00 XXSMTPXX postfix/smtp[10879]: BC54A65BD4: to=<xxxx.yyyyyy@zzzz.com.t>, relay=none, delay=0.3, delays=0.01/0/0.29/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=gozdesigorta.com.t type=AAAA: Host not found)

我在logstash.conf中使用的grok过滤器就像:

grok {
    patterns_dir => "/etc/logstash/patterns"
    tags    => "postfix/bounce"
    pattern => "%{POSTFIXBOUNCE}"
    add_tag => "BOUNCED"
    named_captures_only => true
}

我正在使用的模式文件是https://gist.github.com/4691822

我无法将这些日志行标记为BOUNCED ...我缺少什么?

1 个答案:

答案 0 :(得分:1)

我将模式更改为:

%{TIMESTAMP_ISO8601} %{HOST} %{SYSLOGPROG}: %{QUEUEID}: to=<%{EMAILADDRESS:to}>, relay=%{RELAY}, delay=%{POSREAL:delay}, delays=%{DELAYS}, dsn=%{DSN}, status=%{STATUS} %{GREEDYDATA:reason}

现在我可以理解;)