我正在尝试fail2ban
使用下面的配置文件和模式(通过在线教程)解析日志文件。
但是我遇到了一个 grok 解析错误,有什么想法可以解决这个问题吗?
日志文件格式:
2017-02-13 18:49:52,567 fail2ban.actions [1365]: NOTICE [sshd] Ban 127.0.0.1
日志存储配置:
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+