Для этого случая вы можете использовать Jolt Transform (или) ReplaceText .
Поскольку у вас есть некоторые атрибуты для потокового файла, используйте процессор ReplaceText
В ReplaceMent Value настройте как
{
"projectId": "${projectId}",
"ticketId": "${ticketId}",
"trigger": "${trigger}",
"timestamp": "${timestamp}",
"pivotVersion":"${pivotVersion}",
"pivotType":"${pivotType}",
"todoCount":"${todoCount}",
"pivots[]": {
"*": {
"state": "${state}",
"type": "${type}"
}
}
}
Замените все имена атрибутов ($ {projectId} .. и т. Д.) Именами ваших атрибутов .
Используйте Стратегия замены как AlwaysReplace
(или)
Если вы хотите использовать Jolt для этого случаязатем
Использование операции по умолчанию для замены значений атрибута и подготовки json message
Пример:
Спецификация смещения
[{ "operation": "shift", "spec": { "z":"z" } }, { "operation": "default", "spec": { "projectId": "${projectId}", "ticketId": "${ticketId}", "trigger": "${trigger}", "timestamp": "${timestamp}", "pivotVersion":"${pivotVersion}", "pivotType":"${pivotType}", "todoCount":"${todoCount}", "pivots[]": { "*": { "state": "${state}", "type": "${type}" } } } }]
Поскольку у меня нет значений атрибутов, мой вывод json имеетвсе пустые значения в нем.
Измените spec jolt spec в соответствии с вашими требованиями.