我有一个数据源正在发送包含各种键值对的 json 格式的消息。每条消息中包含哪些密钥并不一致。但是,我需要将每个单独的键值对拆分到自己的流文件中,并能够提取键名称
这样做的原因是,我需要使用键名称执行表查找,以生成新的数据格式,包括值
例如,如果我收到这样的消息:
{
"key1": 123,
"Key2": 4234,
"Key3": 789
}
我希望输出是三个独立的流程文件
{
"key1": 123
}
{
"Key2": 4234
}
{
"Key3": 789
}
我还需要根据这些单独的流文件知道如何提取密钥的名称
对了,
您需要一个 JoltTransformJSON 处理器来完成此操作
震动规格:
[
{
"operation": "shift",
"spec": {
"*": {
"$": "[#2].Key",
"@": "[#2].Value"
}
}
}
]
**接下来,将输出拆分为 $.*.
并使用 EvaluateJson 评估 Key 和 Value ,然后您可以根据需要使用 Lookup 中的属性。
这将是 Jolt Trans 的输出:
[
{
"Key": "key1",
"Value": 123
},
{
"Key": "Key2",
"Value": 4234
},
{
"Key": "Key3",
"Value": 789
}
]