2017-02-16 113 views
1

我正在嘗試使用下面的配置文件和模式(通過在線教程)解析fail2ban日誌文件。Logstash Grok解析錯誤 - fail2ban日誌

但是我得到一個grok解析錯誤,任何想法如何解決這個問題?

日誌文件格式:

2017-02-13 18:49:52,567 fail2ban.actions [1365]: NOTICE [sshd] Ban 127.0.0.1 

logstash配置:

input { 
    file { 
    type => "fail2ban" 
    start_position => "beginning" 
    path => [ "/var/log/fail2ban.log" ] 
    } 
} 

filter { 
    if [type] == "fail2ban" { 
    grok { 
     patterns_dir => "/etc/logstash/patterns" 
     match => [ 
     "message", "%{F2B_DATE:date} %{F2B_ACTION} %{WORD:level} %{F2B_JAIL} %{WORD:action} %{IP:ip}", 
     "message", "%{F2B_DATE:date} %{F2B_ACTION} %{F2B_LEVEL} %{GREEDYDATA:msg}?" 
     ] 
    } 

    geoip { 
     source => "ip" 
    } 
    } 
} 

模式配置:

F2B_DATE %{YEAR}-%{MONTHNUM}-%{MONTHDAY}[ ]%{HOUR}:?%{MINUTE}(?::?%{SECOND}) 
F2B_ACTION (\w+)\.(?:\w+)(\s+)?\: 
F2B_JAIL \[(?<jail>\w+\-?\w+?)\] 
F2B_LEVEL (?<level>\w+)\s+ 
+0

如果你能展示'神交parse'錯誤? – Kulasangar

回答

0

我認爲ÿ ou're在比賽,這意味着該模式說,這是從哪裏開始,在日誌行缺少了胡蘿蔔^符號。如果你有你的比賽這樣:

match => [ 
    "message", "^%{F2B_DATE:date} %{F2B_ACTION} %{WORD:level} %{F2B_JAIL} %{WORD:action} %{IP:ip}", 
    "message", "^%{F2B_DATE:date} %{F2B_ACTION} %{F2B_LEVEL} %{GREEDYDATA:msg}?" 
] 
+0

感謝您的幫助,但這並沒有改變一件事。 – ace