2013-02-01 5 views
4

요약 : 저는 rsyslog를 통해 몇 개의 아웃 바운드 smtp 서버와 중앙 메일 로그를 사용하고 있습니다.이 서버는 내가 사용하고있는 logstash를 사용하여 elasticsearch로 출력하고 kibana로 검색합니다.바운스 된 메시지에 태그를 붙이기위한 로그 스틱 grok 필터

같은 후위 메일 로그 항목은 "BOUNCED"나는 태그를 추가 할

:

2013-02-01T16:50:14+02:00 XXSMTPXX postfix/smtp[10879]: BC54A65BD4: to=<[email protected]>, 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로 표시 할 수 없었다. 나는 무엇이 실종 된거야? 당신이 groks를 사용하는 모든`A는 = b` 값을 받고 같은

답변

1

나는 같은 패턴을 변경했습니다. 그럴 필요는 없습니다. kv 필터 만 사용하십시오. :)
+1

, BTW 것)

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

지금은 grok 수 있습니다 : –