Мне нужно рассчитать разницу во времени вручную без плагина с истекшим сроком действия, так как время окончания варьируется и может достигать 24 часов с очень большим количеством журналов. Мне удалось получить время начала из старого журнала:
elasticsearch {
query => "Event:'Sent' AND ID:%{[ID]}"
index => "mylog*"
result_size => "1"
enable_sort => "false"
fields => { "@timestamp" => "SentTime" }
}
На самом деле он отлично работает и возвращает правильную дату в формате «2017-03-29T22:00:03.000Z».
А вот с: возвращаем значения в таком формате "18 января 1970, 08:07:09.056"
ruby {
code => "event.set('[SecondsToDeliver]', event.get('@timestamp').to_f - event.get('SentTime').to_f)"
add_tag => [ "rubyfilter" ]
}
Я уверен, что это тривиальная синтаксическая ошибка, но я не могу ее поймать.