0

입력 콤마로 분리된다 grok 수 날짜 필터 logstash에 일치하지 : "2010-08-19", "9시 12분 55초", "56095675" 맞춤 날짜 시간은 동일하지만

내가 만든 맞춤 date_time 필드는 2010-08-19;09:12:55 과 일치하지만과 일치하지 않습니다. 키바에

filter { 
grok { 
    match => { "message" => '"(%{GREEDYDATA:cust_date})","(%{TIME:cust_time})","(%{NUMBER:author})"'} 
    add_field => { 
      "date_time" => "%{cust_date};%{cust_time}" 
    } 
} 

date { 
    match => ["date_time", "yyyy-MM-dd;hh:mm:ss"] 
    target => "@timestamp" 
    add_field => { "debug" => "timestampMatched"} 
} 

출력 :

cust_date  August 18th 2010, 20:00:00.000 
cust_time  09:12:55 
date_time  2010-08-19;09:12:55 
message   "2010-08-19","09:12:55","56095675" 
tags  beats_input_codec_plain_applied, _dateparsefailure 

_dateparsefailure을 제공합니다. 필드는 일치 패턴과 동일하게 나타납니다. YYYY-MM-dd;hh:mm:ssYYYY-MM-dd;HH:mm:ss과 같은 다른 시간 형식을 시도했습니다. 무엇이 잘못 되었나요? Help!

답변

0

grok 바로 아래 filter 섹션에 date 플러그인을 넣어야합니다.

filter { 
    grok { 
     match => { "message" => '"(%{GREEDYDATA:cust_date})","(%{TIME:cust_time})","(%{NUMBER:author})"'} 
    add_field => { 
     "date_time" => "%{cust_date};%{cust_time}" 
    } 

    date { 
     match => ["date_time", "yyyy-MM-dd;hh:mm:ss"] 
     target => "@timestamp" 
     add_field => { "debug" => "timestampMatched"} 
    } 
}