У меня есть этот журнал, печать формат даты, который выглядит следующим образом:Logstash пользовательский матч формат даты журнала
= Build Stamp: 10:45:33 On Apr 4 2014 =
Так я запустить фильтр на ГРОК отладчик, но все еще невежественный о том, как удалить слово На
grok {
patterns_dir => "./patterns"
match => { "message" => "%{F_TIMESTAMP:timestamp}" }
}
date {
match => [ "timestamp" , "HH:mm:ss MMM d yyyy" , "HH:mm:ss MMM dd yyyy" ]
locale => "en"
}
шаблон файла,
F_TIMESTAMP %{TIME} \On %{MONTH} +%{MONTHDAY} %{YEAR}
Мой выходной ток для отметки времени будет
10:45:33 На 4 апреля 2014 года на ГРОК отладчика.
Тогда как я могу сделать его совместимым/совпадающим с logstash @timestamp?
Спасибо, это работает для меня, но позже я узнал, что часовой тег HH не отображается правильно в @timestamp "=>" 2014-04-04T02: 45: 33.000Z, так как вы можете видеть, что части HH становятся 02 вместо 10. Затем я удалил тег remove_field мутата, чтобы увидеть, как в часовую метку времени отображается часовая часть, показывающая 10, так что это действительно озадачивает меня сейчас. –
logstash изменил 10 на 2, потому что мое местоположение +8 от UTC. Так что это будет другое значение, если я запустил это в другом месте/стране. Думаю, мне нужно добавить поле часового пояса для этого. –
Да. Вы должны преобразовать его в свое местное время. Может выполняться рубиновым скриптом как: 'ruby {code =>" event ['@ timestamp'] = event ['@ timestamp']. Getlocal "}' –