2017-04-10 923 views
0

如何避免重複,這裏:爲什麼grok {match => {「message」=>「%{DATA:class}:%{GREEDYDATA:message}」}}重複我的消息?

"message": [ 
    "clientErrorHandler: Erro não previsto ou mapeado durante chamada dos serviços.", 
    " Erro não previsto ou mapeado durante chamada dos serviços." 
    ], 

什麼,我做錯了(大概從神交是導致每個消息在兩條線的角度)?

logstash.conf:

input { 
    file { 
    path => "/.../logsreais.log" 
    start_position => "beginning" 
    codec => "json" 
    } 
} 

filter { 
    grok { 
     match => { "message" => "%{DATA:class}:%{GREEDYDATA:message}" } 
    } 
} 

output { 
stdout { 
    # This codec gives your more details about the event. 
    codec => rubydebug 
} 

    elasticsearch { 
    hosts => "http://127.0.0.1:9200" 
    index => "indice" 
    } 
} 

logsreais.log

{"meta":"","level":"error","message":"clientErrorHandler: Erro não previsto ou mapeado durante chamada dos serviços.","timestamp":"2017-04-06T16:08:37.861Z"} 
{"meta":"","level":"error","message":"clientErrorHandler: Erro não previsto ou mapeado durante chamada dos serviços.","timestamp":"2017-04-06T19:40:17.682Z"} 

的Kibana感查詢:

{ 
    "_index": "indice170410g", 
    "_type": "logs", 
    "_id": "AVtZeRktljzknEE8qoSv", 
    "_score": 1, 
    "_source": { 
     "path": "/.../logsreais.log", 
     "@timestamp": "2017-04-10T20:06:00.203Z", 
     "level": "error", 
     "meta": "", 
     "@version": "1", 
     "host": "nodejs", 
     "message": [ 
     "clientErrorHandler: Erro não previsto ou mapeado durante chamada dos serviços.", 
     " Erro não previsto ou mapeado durante chamada dos serviços." 
     ], 
     "class": "clientErrorHandler", 
     "timestamp": "2017-04-06T16:08:37.861Z" 
    } 
    } 

回答

0

你應該設置你的grok濾波器以覆蓋message場由默認它附加數據(如你所見)。

grok { 
    match => { "message" => "%{DATA:class}:%{GREEDYDATA:message}" } 
    overwrite => ["message"] 
} 
相關問題