0
我一直在試圖爲logstash創建一些自定義grok模式。他們大多數工作正常,但有一個讓我難住。該模式是:logstash grok篩選器模式未找到
WINUSER (?<=User:\s)\w+
這裏是正在搜索的數據樣本:
2015-04-14 14:06:18 exchange.ows1.osborneit.com INFO 1149 NT AUTHORITY\NETWORK SERVICE Remote Desktop Services: User authentication succeeded:
User: administrator
Domain: .
Source Network Address: 172.24.1.32
我已經在http://grokconstructor.appspot.com/do/match測試這和它工作正常,但logstash似乎忽略它。我似乎無法弄清楚我做錯了什麼。
下面是我的logstash配置:
input {
udp {
type => "eventlog"
codec => json
port => 5140
tags => ['windows', 'eventlog']
}
}
filter {
if [type] == "eventlog" {
grok {
match => [
"message", "%{IP:client}",
"message", "%{WINUSER:username}"
]
}
}
}
output {
elasticsearch { host => localhost }
stdout { codec => json }
}
更新:看來,這個問題是不是與模式,但隨着比賽的順序。如果我將WINUSER匹配移動到IP匹配上方,它將起作用,但IP匹配不會。不知道爲什麼兩者不匹配。