2015-04-23 51 views
0

我試圖神交與logstash一些行,所以首先我創建了兩個模式巫是這樣的:如何使用logstash處理此輸入?

AZ_LIST [1-9a-zA-Z,]+ 
AZ_STRING [a-zA-Z._-]+ 

,然後我配置logstash神交此輸入:

security=0 system=23 CPU=this.adresse_false Pvm=0,0,0,0,0,0,0,0 Vlan2=AZERT,566,2184,798,3312 

我的過濾器是:

filter { 
    grok { 
     patterns_dir => "/patterns" 

     match => [ 
      "message" , "security=%{NUMBER:security} system=%{NUMBER:system} CPU=%{AZ_STRING:CPU} Pvm=%{AZ_LIST:Pvm} Vlan2=%{AZ_LIST:Vlan2}" 
     ] 
     tag_on_failure => [ "failure_grok_exemple" ] 
     break_on_match => false 
    } 
} 

但這些不工作

+1

一個明顯的問題是,AZ_LIST不允許零但是你的PVM值包含了許多人。 –

+0

非常感謝你的回答我的朋友,我是morito:你認識我嗎?)? – laymo

回答

0

你的模式有錯誤。您的AZ_LIST不包括0,但您的日誌有0 EX:Pvm=0,0,0,0,0,0,0,0

這是我的配置,我可以成功解析您的日誌。

filter { 
     grok { 
       patterns_dir => "./patterns/" 
       match => [ 
       "message" , "security=%{NUMBER:security} system=%{NUMBER:system} CPU=%{AZ_STRING:CPU} Pvm=%{AZ_LIST:Pvm} Vlan2=%{AZ_LIST:Vlan2}" 
       ] 
     } 
} 

模式:

AZ_LIST [0-9a-zA-Z,]+ 
AZ_STRING [a-zA-Z._-]+ 
+0

感謝您的回答:) – laymo