Задача: отправить записи в формате CSV в logstash для разбора.
Достоинства: Все синтаксические анализы работают. Все части CSV разбиты на отдельные поля, которые можно увидеть в кибане.
Плохое: все поля, содержащие дату, неверны. Дата отстает на день и включает время, которое всегда равно 18:00:00. В CSV никогда не было указано время перед синтаксическим анализом. Время никогда не добавлялось в конфигурацию logstash. Но по какой-то причине есть время, когда его видели в кибане.
Подробности: формат дат из CSV: ГГГГ-ММ-ДД.
Конфигурация logstash ТОЛЬКО анализирует поля. Он не делает никаких преобразований и никаких других модификаций. Это очень простая конфигурация.
Проблема должна заключаться где-то в кибане или в эластичном поиске.
Любые мысли о том, как это исправить? *Примечание: такая же проблема возникает в контейнере докера.
Время: точное.
Поле SMF30DTE: на день позади и включает время, которого не должно быть.
SMF30TME: Точно.
Вот мой фильтр logstash:
filter {
split {
}
mutate {
add_field => {"[@metadata][indexname]" => "%{[sourceType]}-%{[sysplexName]}"}
}
mutate {
lowercase => [ "[@metadata][indexname]" ]
}
if [source] =~ "table" {
csv{ columns => [ "Correlator", "SMF30LEN", "SMF30SEG", "SMF30FLG", "SMF30RTY","<shortened for ease of reading>" ]
separator => "," }
}
}