2015-11-03 190 views
0

我想解析,我們有SOAP/REST請求和響應tomcat的日誌。任何人都可以給我一個很好的例子,我們可以解析這些日誌並以json格式將其保存爲彈性搜索。Logstash Tomcat的日誌

+3

而不是讓我們查找一個Tomcat的日誌可能是什麼樣子,爲什麼不張貼的例子,你在分析它的基礎上由谷歌返回72500對結果有什麼困難告訴我們。 –

+0

取決於你想使用,你可以在Scala中,或通過在Linux命令外殼做技術的...有無限的選項來執行。首先創建一個索引,然後填充索引並使用kibana進行表示。喲可以在很多地方閱讀很多指南。 – Deckard27

回答

0

艾倫感謝您的答覆。這是我的例子,我嘗試使用Grok Pattern解析。我是這個新手,所以試圖弄清楚這是否是正確的方法。

2015年9月28日10:50:30249 {HTTP-APR-8080-EXEC-4} INFO [org.apache.cxf.services.interfaceType] 1.0.0-LOCAL - 入站消息 ID: 1 Address:http://localhost:8080/interface/interface?wsdl Encoding:UTF-8 Http-Method:POST Content-Type:text/xml;字符集= UTF-8 接頭:{接受= [/],緩存控制= [無緩存],連接= [保活],內容長度= [2871],內容類型= [文本/ XML;字符集= UTF-8],主機= [本地主機:8080],編譯= [無緩存]的SOAPAction = [ 「http://services.localhost.com/calculate」],用戶代理= [阿帕奇CXF 2.7.5]} 有效載荷:users_19911111test123456false

0
filter { 
if [type] == "tomcatlog"{ 
    multiline { 
     #type => "all" # no type means for all inputs 
     pattern => "^%{TIMESTAMP_ISO8601}" 
     negate => true 
     what => "previous" 
     } 
    grok { 
     match => { 
     message => "%{TIMESTAMP_ISO8601:timestamp}%{SPACE}\{(?<thread>[^)]+)\}%{SPACE}%{LOGLEVEL:level}%{SPACE}\[(?<logger>[^\]]+)\]%{SPACE}%{SPACE}%{GREEDYDATA:message}" 
     } 
     } 
     date { 
      match => [ "timestamp", "yyyy-MM-dd HH:mm:ss,SSS" ] 
      remove_field => [ "timestamp" ] 
    } 
    } 
} 

使用http://grokdebug.herokuapp.com/創建grok過濾器。有用的模式列出patterns

+0

感謝您的回覆。 – Rakesh