2016-09-14 85 views
0

我是新來的正則表達式和使用logstack grok過濾器。我寫我自己的正則表達式過濾此郵件寫入自定義grok過濾器時得到解析錯誤

NAID-iOS-3093448A-BC34-4FE1-A057-29AD2CEF8FD3-1471410782.565937 IP-202.174.93.103 2016-08-17 00:13:09,963

我神交過濾器是

grok{ 
    match => {"message" => "%{DATA:deviceid}%{IP:Serverip}%{%{YEAR}[-]%{MONTHNUM}[-]%{MONTHDAY}:Date}%{GREEDYDATA:data}"} 
} 

在神交默認DATE_EU條目%{MONTHDAY}[./-]%{MONTHNUM}[./-]%{YEAR}

,但我需要的是一個反向所以我寫了

%{%{YEAR}[./-]%{MONTHNUM}[./-]%{MONTHDAY}:Date}而不是%{DATE_EU:Date}但在我的語法中獲得[0]_grok parsefailure消息。

我甚至跟着https://www.elastic.co/guide/en/logstash/current/plugins-filters-grok.html#_custom_patterns創造我使用Windows logstash文件夾內的一個模式目錄,裏面加文件DATE_LOG %{YEAR}[./-]%{MONTHNUM}[./-]%{MONTHDAY}項命名爲「多餘的」,但再次得到parsing_error

回答

0

您正在使用錯誤的語法。在解析日誌行你的名字與自己的變量每個部分,例如:

%{MONTHNUM:month}-%{MONTHDAY:day} 

,然後你完成你自己的格式是這樣的:

replace => ['timestamp', '%{month}-%{day}']