Преобразование толчка для добавления новой записи индекса json перед каждой записью json - PullRequest
0 голосов
/ 07 февраля 2020

Вход JSON

[
    {
        "timestamp":"2020-01-28 12:13:43,561",
        "threadno":"5",
        "loglevel":"DEBUG",
        "class":"someclassname",
        "nanoseconds":"587800052",
        "message":null,
        "stackTrace":null
    },
    {
        "timestamp":"2020-01-28 12:33:57,328",
        "threadno":"12",
        "loglevel":"DEBUG",
        "class":"someclassname",
        "nanoseconds":"6419049968",
        "message":null,
        "stackTrace":null
    }
]

Выход JSON


[
    {
        "index":{
            "_index":"test",
            "_type":"doc",
            "_id":"20200128121343561"
        }
    },
    {
        "timestamp":"2020-01-28 12:13:43,561",
        "threadno":"5",
        "loglevel":"DEBUG",
        "class":"someclassname",
        "nanoseconds":"587800052",
        "message":null,
        "stackTrace":null
    },
    {
        "index":{
            "_index":"test",
            "_type":"doc",
            "_id":"20200128123357328"
        }
    },
    {
        "timestamp":"2020-01-28 12:33:57,328",
        "threadno":"12",
        "loglevel":"DEBUG",
        "class":"someclassname",
        "nanoseconds":"6419049968",
        "message":null,
        "stackTrace":null
    }
]

мне нужно добавить эту индексную запись перед каждой json записью {"index": {"_index ":" test "," _type ":" do c "," _id ":" 20200128121343561 "}}, а значение _id получено из отметки времени. Можем ли мы добавить новую строку после каждой записи json, используя преобразование толчка

1 Ответ

0 голосов
/ 07 февраля 2020

Обработка вашего поля timestamp для создания _id является преобразованием данных. В соответствии с документами JOLT, вы должны будете написать это как пользовательский Java код.

В настоящее время все преобразования Stock просто влияют на «структуру» данных. Чтобы манипулировать данными, вам нужно написать Java код. Если вы напишите свой Java код «манипулирования данными» для реализации интерфейса Transform, то вы можете вставить свой код в цепочку преобразования.

см. https://github.com/bazaarvoice/jolt для получения подробной информации .

...