Проблема с плагином logstash jdbc

Я использую плагин logstash jdbc для передачи данных из db в elasticsearch. При выборе данных из базы данных имена столбцов пишутся строчными буквами. Но мне нужно, чтобы имена столбцов были изменены на верхний регистр, а значения должны быть вставлены в уже созданный индекс с полями, имеющими верхний регистр.

Я пробовал использовать

filter{
   mutate {
     uppercase => [ "column1" , "column2" , "column3" ]
   }
}

Я уже создал индекс в ES с COLUMN1, COLUMN2, COLUMN3. Но когда я запускаю файл logstash, он создает новые поля column1, column2, column3 и не индексирует какие-либо данные в полях COLUMN1, COLUMN2, COLUMN3.


person sri    schedule 10.12.2015    source источник
comment
Фильтр mutate/uppercase записывает в верхний регистр значения полей, названных в массиве, а не сами имена полей.   -  person Val    schedule 10.12.2015
comment
Это означает, что данные, хранящиеся в этом поле, изменяются на верхний регистр перед вставкой в ​​эластичный поиск ??   -  person sri    schedule 10.12.2015
comment
Да, но не само название поля   -  person Val    schedule 10.12.2015
comment
Есть ли способ переименовать поле?   -  person sri    schedule 10.12.2015


Ответы (1)


Возможно, немного поздно, но видели ли вы параметр lowercase_column_names в https://www.elastic.co/guide/en/logstash/current/plugins-inputs-jdbc.html? По умолчанию он имеет значение true, что означает, что logstash будет строчными буквами имена столбцов из набора результатов JDBC.

person JointEffort    schedule 24.02.2016