#jolt
Вопрос:
Исходный код JSON:
[
{
"metrics": {
"cost_per_app_install": "0.08",
},
"dimensions": {
"stat_time_day": "2021-06-04 00:00:00",
"campaign_id": 170011516
}
},
{
"metrics": {
"cost_per_app_install": "12.3",
},
"dimensions": {
"stat_time_day": "2021-06-04 00:00:00",
"campaign_id": 17013
}
}
]
Ожидаемый:
[
{
"cost_per_app_install": "0.08",
"stat_time_day": "2021-06-04 00:00:00",
"campaign_id": 170011516
},
{
"cost_per_app_install": "12.3",
"stat_time_day": "2021-06-04 00:00:00",
"campaign_id": 17013
}
]
Спецификация ВСТРЯСКИ:
[
{
"operation": "shift",
"spec": {
"*": {
"metrics": "[amp;1]",
"dimensions": "[amp;1]"
}
}
}
]
Я хочу добавить данные dimensions
и metrics
свойства как одну объединенную запись. Но не смог с моей конфигурацией JOLT. Эта конфигурация просто удаляет metrics
и dimensions
имена. Могу ли я сделать это только с shift
помощью операции?
Ответ №1:
Вам нужен еще один шаг для перемещения по индексам, таким как
[
{
"operation": "shift",
"spec": {
"*": {
"*": { "*": "[amp;2].amp;" }
}
}
}
]
Кстати, нет необходимости явно перечислять пары ключ-значение для текущего случая, просто "*": "[amp;1]"
следует отдавать предпочтение, а не "metrics": "[amp;1]","dimensions": "[amp;1]"
для текущих пар, если бы это было так.