思路
- 找到典型的需要的業(yè)務(wù)日志
- 比如我的是重要的業(yè)務(wù)日志是含有xml內(nèi)容的如何處理
- 捋清楚思路,先分開(kāi)字段匹配,把含有xml消息的日志正文 grok 出來(lái)一個(gè)字段叫做任意你起的名字,這里是xmlnews
- 使用logstash xml 模塊,使用source參數(shù),表示消息來(lái)源是從這個(gè)參數(shù)調(diào)用,讓這個(gè)參數(shù)的來(lái)源等于,第二個(gè)步驟定義的xmlnews。logstash 會(huì)自動(dòng)幫你提取xml內(nèi)容
實(shí)現(xiàn)步驟
- 使用grok 結(jié)構(gòu)化字段
input {
stdin{}
}
filter {
#我這里的tomcat 日志匹配模式,你們不一定能用,這里只提供思路,實(shí)際使用自己匹配模式
grok {
match => { "message" => "^%{TIMESTAMP_ISO8601:access_time} %{LOGLEVEL:loglevel} \[%{DATA:da}\] %{USERNAME:class} \(%{DATA:linenum}\) \- 從隊(duì)列\(zhòng)[%{TWOUNDERSCORE:queuename}\]%{GREEDYDATA:xmlnews}$" }
}
}
- xml調(diào)用
filter {
grok {
match => { "message" => "^%{TIMESTAMP_ISO8601:access_time} %{LOGLEVEL:loglevel} \[%{DATA:da}\] %{USERNAME:class} \(%{DATA:linenum}\) \- 從隊(duì)列\(zhòng)[%{TWOUNDERSCORE:queuename}\]%{GREEDYDATA:xmlnews}$" }
}
xml {
source => "xmlnews" #只要xmlnew 包含xml 格式,就會(huì)被抽取出來(lái)
}
}
展現(xiàn)結(jié)果圖沒(méi)有截圖 以后補(bǔ)充