2014-07-02 80 views
0

我想請求您的幫助,以自定義格式解析我的日誌。我試圖用http://grokdebug.herokuapp.com/來發現我的日誌格式,但不幸的是我沒有成功。我的日誌有下一格式:解析自定義日誌Logstash

#AdressHost#TypeLogs|OrganizationName|[email protected]|CallMethod|ExecutionTimeOnDB|ExecutionTimeOnAppServer|Date Time 

例如:

#mac.frozm.com#CallInfo|Jonsens|[email protected]|GetTotalsInfo|19|3|2014-05-11 07:49:10 

我嘗試使用以下模式:

#%{URIHOST}#CallInfo|Jonsens|%{USER:auth}@%{URIPROTO}|GetTotalsInfo|%{NUMBER:duration}|0|%{DATESTAMP} %{TIME} 

但Logstash不斷拋出 「_grokparsefailure」 你能幫忙我或可能會建議另一種方法來解析日誌Logstash工具

回答

1

T他的部分:

GetTotalsInfo|19|3| 

似乎並不匹配與模式的這一部分:如您在模式指定0

GetTotalsInfo|%{NUMBER:duration}|0| 

凡在你的例子中,你有3

這是建立grok模式時的一般建議。每次做一小塊圖案,並在建立更大圖案之前檢查它們是否先工作。你可以使用它來調試給你帶來麻煩的模式,把每個單獨的部分和測試它們。

例如,剛開始時有這樣的圖案,然後檢查,看看它的工作原理:

"^#%{URIHOST}" 

(的^是一個正則表達式錨,保證沒有前面的字符) 從那裏建立起來。

我希望這有助於!