2016-01-30 2 views
4

У меня есть PostgreSQL, который хранит некоторые данные в виде JSon полей, например:Logstash JDBC - как обрабатывать поле json?

{"adults":2,"children":{"total":0,"ages":[]}} 

Я использую logstash-ввода-плагин JDBC для обработки данных
Как я разобрать JSON с JDBC? Из журналов я вижу, что поля прибывают как PGObject:

"travelers_json" => #<Java::OrgPostgresqlUtil::PGobject:0x278826b2> 

который имеет value и type свойств.

Я пробовал использовать json-фильтр, но я не знаю, как получить доступ к свойству value для подачи на json-фильтр? Что я пробовал:

source => "[travelers_json][value]" 
source => "travelers_json.value" 
source => "%{travelers_json.value}" 

Я должен что-то очень очевидное здесь не хватает?

ответ

1

Итак, самый простой способ был преобразовать JSON в тексте PostgreSQL:

SELECT travelers_json::TEXT from xxx 

, но я все же хотел бы знать, как получить доступ к этому PGobject

+0

очень хороший вопрос – zavr

Смежные вопросы