Разбор определенной даты в logstash - PullRequest
0 голосов
/ 10 октября 2019

Я пытаюсь разобрать следующую дату в logstash 2019-08-01T00: 00: 00Z / 2019-08-02T00: 00: 00Z

Я пробовал несколько вещей, но ничего не получалось

Вариант 1

date{
match => ["timestamp","ISO8601/ISO8601"]
    target => "timestamp"
  }

Вариант 2

date{
match => ["timestamp","ISO8601"]
    target => "timestamp"
  }    

Вариант 3 - конвейер работает, но я получаю dateparsefailure

date{
match => ["timestamp","ISO8601"/"ISO8601"]
    target => "timestamp"
  }

1 Ответ

1 голос
/ 12 октября 2019

Как насчет использования шаблона grok для сбора дат в отдельные поля и последующего их объединения, используя mutate

filter {  
  grok {
    match => [ "message", "%{TIMESTAMP_ISO8601:date_1}/%{TIMESTAMP_ISO8601:date_2}" ]
    tag_on_failure => [ "_failure", "_grokparsefailure" ]
  }

  if "_failure" not in [tags] {
    mutate {
      add_field => { "timestamp" => "%{date_1}/%{date_2}"}
    }
  }
}
...