Logstash JDBC - как обработать JSON поле?
У меня есть postgresql, который хранит некоторые данные в виде полей JSON, например:
{"adults":2,"children":{"total":0,"ages":[]}}
Я использую плагин logstash-input-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